串的儲存結構與線性表相同,分為兩種。
1.串的順序儲存結構
串的順序儲存結構是用一組位址連續的儲存單元來儲存串中的字串行的。按照預定義的大小,為每個定義的串變數分配乙個固定長度的儲存區。一般是用定長數值來定義。
對於串的順序儲存,串值的儲存空間可在程式執行過程中動態分配而得。比如在計算機中存在乙個自由儲存區,叫做「堆」,這個堆可有c語言的動態分配函式malloc()以及free()來管理。
2.串的鏈式儲存結構
串的鏈式儲存結構與鍊錶類似,不同之處在於,串結點中乙個結點可以放乙個字元,也可以放多個字元。最後乙個結點若是未被佔滿時,可以用「#」或其他非串值字元補全,如下圖所示:
串的儲存結構
串處理的資料元素只能是字元,是由零個或多個字串組成的有序序列,又名叫字串。串中元素邏輯關係和線性表的相同,串也分為順序儲存結構和鏈式儲存結構。順序儲存結構就是資料元素的邏輯關係直接對映到物理位置,用物理位置的先後表示邏輯先後。順序儲存結構的實現 串的順序儲存可以用陣列實現 typedef struc...
資料結構 串的儲存結構
定長資料串基本操作 插入位置pos將串分為兩部分 有三種情況 情況一 插入後總長大於原長 情況二 插入後總長等於原長 第三種 小於 串的模式匹配 目的 主要是消除了主串指標的回溯,從而使演算法效率有了某種程度的提高。kmp演算法引入了乙個next陣列 next i 表示的是前i的字元組成的這個子串最...
串 順序儲存結構
該文章主要介紹串的順序儲存結構以及相關運算。標頭檔案 sqstring.h ifndef sqstring h define sqstring h include const int maxsize 100 class sqstringclass 順序串類 endif 原始檔 sqstring.cp...