malloc 結構體 資料結構 鍊錶(思路)

2021-10-11 15:05:49 字數 744 閱讀 8235

1、寫在前面

去學習鍊錶,發現自己對c語言的指標和結構體的理解還是不夠透徹,現將今天學習所得分享給大家。涉及到的知識為無頭鍊錶,不涉及鍊錶的插入刪除等知識,只是將鍊錶的思想理解了一遍。

2.鍊錶

(1)概括

鍊錶:顧名思義,就像一條鍊子一樣,每乙個圈的頭連著上乙個圈的尾部。

(2)組成

鍊錶是由乙個乙個的節點組成的。節點由資料域和指標域構成,資料域儲存當前節點的資料,指標域儲存下乙個節點的位址。如下圖所示。

如圖所示,為乙個結構體,data儲存資料,next儲存位址。

注意!!!

node *next涉及到結構體的巢狀*,可以去了解一下,網上很多資料,寫的非常好,這裡就不一一解釋。

(3)主函式

如上圖所示,每個步驟都有備註。

這裡敲重點了!!!malloc為c 庫函式 void

malloc(size_t size)

分配所需的記憶體空間,並返回乙個指向它的指標。

sizeof為乙個操作符,用來計算位元組大小。但是結構體的位元組統計則需要注意位元組對齊*這個知識點,大家也可以去查一下。

資料結構 鍊錶

鍊錶 what 就是一張鏈式儲存的表,是一種資料結構,是基礎,所以還是不要想有什麼用。具體呢?在c中就用結構體實現物件描述,然後通過函式來實現各個基本操作 c 則用類來表述,c中的結構體就可以看成c 中的類,然後通過類封裝各個操作步驟。這些操作實現後就需要 來測試,號稱demo,就是main函式裡面...

資料結構 鍊錶

鍊錶中的資料是以節點來表示的,每個結點的構成 元素 資料元素的映象 指標 指示後繼元素儲存位置 元素就是儲存資料的儲存單元,指標就是連線每個結點的位址資料。鍊錶的結點結構 data next data域 存放結點值的資料域 next域 存放結點的直接後繼的位址 位置 的指標域 鏈域 以 結點的序列 ...

資料結構 鍊錶

一般的建立線性鍊錶有兩種 1.正序法 需要三個指標,head作為頭指標,pre作為前乙個指標,cur作為當前指標用來建立空間 2.倒序法,利用指標的插入,只需要兩個指標,不斷的往頭指標後插入新空間,不過插入的越早,離頭指標越遠,也就越後面輸出 1.線性鍊錶的建立及查詢刪除 include inclu...