python鍊錶中的單項鍊表概述,超級詳細!!

2021-10-09 16:52:34 字數 455 閱讀 1077

首先看一下順序表和煉表的區別

順序表:預先知道資料大小來申請連續的儲存空間,而在進行擴充時又需要進行資料的搬遷,所以使用起來不是很靈活?

鍊錶:可以充分利用計算機記憶體空間,實現靈活的記憶體動態管理,可以通俗理解為手鍊,通過鍊子把珠子一顆一顆串起來,就是節點和節點之間靠繩子串起來,

鍊錶和順序表統稱為線性表(所謂線性表就是:資料結構無論是連續儲存還是拿線串起來,最終表現形式就是

一維空間的一根線串起來的),在擴充 後期會引入二維空間、乙個平面了,樹的概念

鍊錶是一種常見的基礎資料結構,是一種線性表,但是不像順序表一樣連續儲存資料,而是在每乙個節點(資料儲存單元)裡存放下乙個節點的位置資訊(即位址)。

這種非連續的儲存怎麼把他們連續起來呢,如何讓他們之間產生關係呢?

C語言單項鍊表的實現

include include typedef int typedata define node length sizeof node 定義鍊錶的結構體 typedef struct tagnode node 函式宣告 node createlist typedata tdindata int fo...

帶表頭的迴圈單項鍊表

include include struct node 定義結點的結構體 typedef struct node node 將struct node簡單定義為node typedef struct node link 將stcuct node型別定義為 link void insert node h...

單項鍊表迭代器的實現

之前說過迭代器將不同的容器的訪問方式統一起來,所以鍊錶也有自己的迭代器。單項鍊表由於不能向後查詢,所以只能實現向前迭代器。要使用迭代器,鍊錶一定要支援迭代器,一般加入下面兩個函式就行了。iterator begin iterator end 即返回首尾指標的位置。class iterator t o...