資料結構(四) 串

2021-10-03 08:52:34 字數 1040 閱讀 5105

串(string)是由零個或多個字元構成的有限序列,又叫字串

空格串:只包含空格的串

空串:零個字元的串

串的大小比較

對於數字來說,1與2 誰大誰小不用討論,但是 兩個字串怎麼比較大小呢?

計算機的常用字元是使用標準的ascii編碼。所以我們字串的比較就是逐個的比較ascii值的大小

串的一些操作函式

函式名功能

strassign (t,*chars)

生成乙個其值等於字串常量char的串t

strcopy(t,s)

若s存在,由s複製得t

clearstring(s)

串s存在,將串清空

stringempty(s)

若串為空返回true

strlength(s)

返回串的長度

strcompare(s,t)

判斷st的大小

concat(t,s1,s2)

用t返回由s1s2連線而成的新串

strdelete(s,pos,len)

從s刪除第pos個字元起長度為len的子串

strinsert(s,pos,t)

在s第pos個字元之前插入子串t

replace(s,t,v)

串stv存在,用v替換主串s**現的所有與t相等的不重疊子串

串的順序儲存結構

它使用一組位址連續的儲存單元來儲存串中的字串行的。一般使用定長陣列。

但順序處理存在的問題就是,可能會產生溢位,或者對多出來的做截尾 操作。

串的鏈式儲存結構

對於串的鏈式儲存與線性表是相似的。鏈式的問題在於,乙個節點存多少個字元才是最合適的?這要根據實際情況做出選擇。

子串的定位操作通常稱為串的模式匹配。

最簡單的匹配演算法可以這麼解決:

對主串的每乙個字元作為子串的開頭,與要匹配的字串進行匹配,對主串做大迴圈,每個字元開頭做t的長度的小迴圈,知道匹配成功或者全部遍歷為止。

但是這種方法太低效了,有沒有更加好用的演算法呢?

漫談資料結構 四 串

串又稱字串,是比較常見的乙個資料結構,它由0或多個字元構成,一般定義為s abcdegf 字元的個數稱為串的長度。長度為0的串為空串,記為s 由空格組成的串為空格串,空格也是字元,記為s 目前,隨著科學技術的發展,非數值處理的情況越來越多,學好字串的處理變得尤為重要,本文將介紹字串處理的幾個基本方法...

資料結構實驗四 串

一 實驗目的 通過訓練,加深理解並把握串的基本運算的特點。二 實驗內容 問題描述 本題目中的串編輯要求對串實現以下兩種功能 本題目中的串編輯要求對串實現以下兩種功能 插入 把乙個字串插入到給定串的指定位置 刪除 將串中某指定位置開始的若干字元從串中刪除 參考程式 include include in...

資料結構實驗四 串(模式匹配,刪除子串)

實驗三串 一 實驗目的 1 熟悉串的順序儲存結構 2 掌握串的基本運算及應用 二 實驗內容 1 模式匹配 串採用順序儲存結構,編寫樸素模式匹配演算法,查詢在串中是否存在給定的子串。本標頭檔案為實驗四第一問串的順序儲存 include using namespace std const int siz...