第四章 棧與佇列
1, 棧:線性序列,由向量/列表派生
相比於向量和列表,增加了約束:只能訪問棧頂元素;只能對棧頂元素增減,且lilo。
五個主要操作:push(), pop(), top(), empty(), size().
實現:棧的應用:
遞迴巢狀,如:
延遲緩衝,如中綴表示式求值
棧式計算
2,佇列-在圖演算法中有廣泛應用
受限的序列,fifo。可有向量/列表派生。
支援的主要操作:enqueue(), dequeue(), front(), rear(), empty(), size().
實現:應用:迴圈分配器;銀行服務模擬。
《注:堆疊的許多應用,暫時跳過》
資料結構學習筆記 棧與佇列
二 佇列 總結參考文獻 棧和佇列的資料操作範圍僅限於邏輯上特定的某端,棧先進後出,佇列先進先出。操作介面 功能返回型別 size 報告棧的規模 intempty 判斷棧是否為空 bool push e 將e插至棧頂 void pop 刪除棧頂物件 ttop 引用棧頂物件 t include vect...
資料結構學習筆記 第4章 串
4.1.3 串的基本操作 4.2 串的模式匹配 4.2.3 kmp演算法的進一步優化 定長順序儲存表示 define maxlen 255 預定義最大串長為255 typedef struct sstring 堆分配儲存表示typedef struct hstring 塊鏈儲存表示int index...
《大話資料結構》第4章 棧與佇列
棧與佇列 棧 佇列都是特殊的線性表 受限表 只不過對插入和刪除操作做了限制 沒有修改操作 這些操作只能限制在表的一端 what棧 棧是限定僅在表尾 這裡的表尾是指棧頂,而不是棧底 進行插入和刪除操作的線性表 what佇列 佇列是只允許在表的一端進行插入操作,而在表的另一端進行刪除操作的線性表 棧 佇...