鍊錶有單鏈表,雙鏈表,環鏈表
做一模組,用鍊錶防止記憶體洩漏,定義乙個鍊錶,需要一結構體
鍊錶記憶體不是連續的,鍊錶的缺點,找某個數字。陣列就找到a[5],而鍊錶還要鏈式遍歷才可以找到,查詢沒有優勢
1:一般的形式列印出鍊錶
//建立乙個struct這樣型別的結構體,
struct mystruct
;void main()
2://建立一指標px等於p,用for迴圈的方式遍歷這個鍊錶
//建立乙個struct這樣型別的結構體,
struct mystruct
;void main()
system("pause");}
3://用遞迴把這個鍊錶列印出來,遞迴就是乙個函式呼叫的過程,(順序和逆序,printf放在上面是順序,放在下面是逆序)
//建立乙個struct這樣型別的結構體,
struct mystruct
;void show(struct mystruct *p)//引數必須是一指標
else
}void main()
4: 用while迴圈列印鍊錶
//建立乙個struct這樣型別的結構體,
struct mystruct
;void main()
system("pause");
}
迴圈鍊錶(鏈式儲存)
1 定義鍊錶節點以及表頭資料結構 typedef struct circlelinknodecirclelinknode typedef struct circlelinklistcirclelinklist 2 鍊錶的初始化 circlelinknode circlelinklistinit 建立...
線性表鏈式儲存
線性表鏈式儲存結構的建立 刪除最小值結點 值唯一 刪除某個指定值 不唯一 就地逆置 反向輸出 遞增排序 刪除重複結點 根據奇偶序號劃分成兩個帶頭結點的單鏈表。include stdio.h include stdlib.h typedef struct lnode lnode,llist void ...
線性表 鏈式儲存
概念 邏輯上相鄰的兩個資料元素在物理位置上可能相鄰也可能不相鄰,這中儲存結構為非順序映像或鏈式映像。特點 線性表的鏈式儲存結構的特點是可以用一組任意的儲存單元來儲存線性表中的資料,這組儲存單元可以是連續的,也可以是不連續的。由於這種特性,單鏈表中要取得第i個元素,必須從第乙個元素開始尋找,因此單鏈表...