第一步: 原來l 的 next 域 是a1 ,將 l 的 next 域 賦值給 了 s的 next 域 實現了 s與 a1 的相連
s->next = l->next; //第二步: 將l的next 域賦值給 s 實現了 l與 s 的相連 這樣 s的左邊連線 與 右邊連線都實現了將l的next 域指向了 新建立節點的data 域
l->next = s; //**:將l的next 指向為 s
/*單鏈表(含頭結點)
*/#include
#include
typedef
intelemtype;
typedef
struct
lnodelnode,*linklist;
linklist createheadlist(elemtype a,
int n); //
頭插法建立單鏈表
void
outputlist(linklist l);
void
main();
elemtype e;
l = createlist1(a, 5
); outputlist(l);}
linklist createheadlist(elemtype a,
int n)
returnl;}
//輸出所有鍊錶的思路:
//1.讓頭節點的next 指向下乙個節點
//2. 做乙個迴圈 當超出時打斷迴圈 迴圈內的時候 p 指向下乙個 p 是 現在的節點 p=p-> next 節點會向下乙個移動
帶頭節點 與不帶頭節點的實現 :
不帶頭節點:
帶頭節點:
比較:
資料結構 單鏈表 頭插法和尾插法建立單鏈表
程式設計注意事項 1.尾插法注意輸入資料結束之後尾指標標記為空 2.複習 頭插法的重要應用是鍊錶逆置 3.if cin.get n break 應該放置在迴圈的最後,因為輸入資料之後是緊接著回車,如果放置在cin的後面,那麼最後輸入的資料就讀不進去了。typedef struct lnode lno...
單鏈表頭插法
include includetypedef struct node snode snode creat 建立頭結點 for i 1 idata x s next head head s return head int lenth snode l 求鍊錶的長度 return len snode ge...
單鏈表 頭插法
include include list.h int main node head null register int i 0 int n sizeof a sizeof a 0 for ireturn 0 include list.h include include node list creat...