#include
"stdio.h"
#include
"stdlib.h"
#include
"stdbool.h"
typedef
struct lnode lnode,
*linkedlist;
// 初始化乙個單鏈表(帶頭結點)
linkedlist initlist
(linkedlist l)
l->next =
null
;// 頭結點之後暫時還沒有結點
return l;
}/**
* 在第i個位置插入元素e(帶頭結點)
*/ bool listinsert
(linkedlist l,
int i,
int e)
lnode *p;
// 建立乙個當前指向的結點
p = l;
// 初始化指向到頭結點
int j =1;
while
(j < i)
lnode *s;
// 新建乙個待插入的新節點
s =(lnode *
)malloc
(sizeof
(lnode));
// 給新節點分配記憶體
s->data = e;
// 給新節點放入資料
s->next = p->next;
// 新節點指向當前結點的下乙個結點
p->next = s;
// 原結點指標改為指向到新建立的結點
}readall
(linkedlist l)
}deleteitem
(linkedlist l,
int i)
lnode * t = s->next;
s->next = s->next->next;
free
(t);
}int
main()
資料結構 鍊錶(C語言版)
程式 include include include define error 0 define ok 1 define true 1 define false 0 define overflow 2 typedef int elemtype 定義鍊錶元素的型別 typedef int status...
資料結構鍊錶C語言版 單向鍊錶詳解
最近在準備計算機考研,正在複習資料結構的知識點,剛開始學習鍊錶的時候實在是有些痛苦,在痛苦了幾個小時後,終於有所收穫,在此記錄一下 相鄰元素之間通過指標連線。最後乙個元素的後繼指標為null。鍊錶的空間能夠按需分配。沒有記憶體空間的浪費。typedef struct node node 定義乙個st...
資料結構 有序鍊錶合併(C語言版)
有序鍊錶合併 兩個有序的鍊錶,要求將其合併為乙個鍊錶,並且該鍊錶保持有序!這裡所講的是鍊錶公升序!首先,我們要構造兩張按照公升序排列好的鍊錶。構造鍊錶 我們的方法有尾插,頭插,大家可以click鏈結來檢視 這裡我們的實驗資料,以及思路如圖所示!實驗資料 鍊錶1 1,3,5,7 鍊錶2 1,2,4 5...