一、定義:
單向鍊錶(單鏈表)時鍊錶的一種,它由節點組成,每個節點都包含下乙個節點的指標。
1、定義節點類
//定義節點類
struct node
;
2、定義單鏈錶類class
slist
;
二、實現:
單鏈表的實現方式有很多種,常見的有
(1)帶頭結點的單鏈表
(2)不帶頭結點的單鏈表
(3)帶頭節點和尾節點的單鏈表
(1)和(2)的主要區別是:
(1)的頭節點是個空節點,其主要作用是指向鍊錶的第乙個節點,
(2)的頭結點不是空節點,是整個鍊錶的第乙個節點。
(3)是乙個迴圈鍊錶,即鍊錶的尾節點指向頭結點;下面會對各種實現方式進行具體的介紹。
下面給出單鏈表幾種實現方式的完整示例**,所有的示例**工程都是由codeblocks建立和編譯的。
帶頭結點的單鏈表的c++實現
不帶頭結點的單鏈表的c++實現
帶頭結點和尾節點的單鏈表的c++實現
資料結構 線性表之單鏈表
線性表 亦作順序表 是最基本 最簡單 也是最常用的一種資料結構。線性表中資料元素之間的關係是一對一的關係,即除了第乙個和最後乙個資料元素之外,其它資料元素都是首尾相接的。線性表有兩種儲存結構 順序儲存結構,即儲存單元在一段連續的位址上儲存,常見的陣列就是順序儲存結構的線性表 鏈式儲存結構,即儲存單元...
資料結構與演算法入門 線性結構之單鏈表
單鏈表是一種鏈式訪問的資料結構,用一組位址任意的儲存單元存放線性表中的資料元素。鍊錶中的資料是以結點來表示的,每個結點的構成 元素 資料元素的映象 指標 指示後繼元素儲存位置 元素就是儲存資料的儲存單元,指標就是連線每個結點的位址資料。就好像一列火車,每一節車廂後面都會跟著另一節車廂。public ...
資料結構 線性結構 反向輸出單鏈表
要求 有帶頭節點的單鏈表l,編寫演算法實現從尾到頭反向輸出每個結點的值。分析 這裡有一種思路是利用棧,在正向遍歷單鏈表的時候進行入棧,然後遍歷完成之後依次出棧,既可實現反向輸出。既然可以用棧,那麼也可以用遞迴的方式來實現。然而遞迴是利用的棧,實質上是相同的。遞迴的時候,系統需要設立乙個 工作棧 作為...