一、串的基本概念
串(字串):是由零個或多個字元組成的有限序列,一般記為:
s=『a1a2…an』(n>=0)
s是串名,單引號括起來的是串的值,ai(1<=i<=n)可以是字母、數字或其他字元。
串中字元的數目n稱為串的長度;
長度為零的串稱為空串;
串中任意個連續的字元組成的子串行稱為子串;
包含子串的串相應的稱為主串;
字元在序列中的序號稱為該字元在串中的位置;
子串在主串中的位置以子串的第乙個字元在主串中的位置來表示。
二、串的表示和實現
1)定長順序儲存表示:用一組位址連續的儲存單元儲存串值的字串行。
2)堆分配儲存表示:仍是用一組位址連續的儲存單元存放串值字串行,但它們的儲存空間是在程式執行的過程中動態分配的。
3)串的塊鏈儲存表示:用鍊錶方式儲存串值。
用鍊錶儲存串值時,由於串中的資料元素是乙個字元,每個結點可以存放乙個字元,也可以存放多個字元。除頭指標外還可附設乙個尾指標指示鍊錶中的最後乙個結點,並給出當前串的長度。
三、串操作
1)串聯接contact(&t,s1,s2);
2)求子串substring(&sub,s,pos,len);
3)模式匹配index(s,t,pos):子串的定位操作稱作串的模式匹配。
資料結構 串
輸入乙個字串,按字典序列印出該字串中字元的所有排列。例如輸入字串abc,則列印出由字元a,b,c所能排列出來的所有字串abc,acb,bac,bca,cab和cba。結果請按字母順序輸出。我們求整個字串的排列,可以看成兩步 首先求所有可能出現在第乙個位置的字元,即把第乙個字元和後面所有的字元交換。第...
資料結構 串
串名 串值 串長 空串 空格串。字串的比較 字串模式匹配演算法 1.簡單字串模式匹配演算法 最簡單實現是用字串p的字元依次與字串t中的字元進行比較。實現思想是,首先將子串p從第0個字元起與主串t的第pos個字元起依次比較對應字元,如全部對應相等,則表明已找到匹配,成功終止。否則將子串p從第0個子串起...
資料結構 串
串 又稱字串 是一種特殊的線性表,它的每個結點僅由乙個字元組成。在早期的程式語言中,串僅在輸入或輸出中以直接量的形式出現,並不參與運算。隨著計算機的發展,串在文字編輯 詞法掃瞄 符號處理以及定理證明等許多領域得到越來越廣泛的應用。在高階語言中開始引入了串變數的概念,如同整型 實型變數一樣,串變數也可...