c單鏈錶小案例1

2021-07-04 16:01:54 字數 819 閱讀 7873

#include

#include

#include

typedef struct mynodenode,*pnode;

pnode createlinklist();

void addend(pnode pnode,pnode newnode);

void show(pnode pnode);

void main()

//建立乙個鍊錶

pnode createlinklist()

phead->pnext = null;

//初始化鍊錶個數

int number;

printf("請輸入初始化鍊錶的個數 : ");

scanf("%d",&number);

int i = 0 ;

int temp;

for(; i < number ; i++ )

printf("請輸入第%d個的值 : ",i);

scanf("%d",&temp);

newnode->data = temp;

newnode->pnext = null;

//增加到鍊錶的末尾

addend(phead,newnode);

}return phead;

}//將新增結點加入到鍊錶最後面

void addend(pnode pnode,pnode newnode)

pnode->pnext = newnode;

}//輸出鍊錶的值

void show(pnode pnode)

}

c單鏈錶小案例2

之所以有c單鏈錶小案例2,是相當於c單鏈錶小案例1來說的,在1中,我在初始化鍊錶的時候,new乙個新節點,遍歷該鍊錶,得到最後的節點,然後將新節點掛在最後的節點上,但這樣存在效率問題,就是每掛乙個節點,就需要遍歷一次鍊錶,由此出現了 c單鏈錶小案例2,在這裡採用的是 new出乙個新的指標,通過移動指...

1,單鏈表反轉

題目 顧名思義,就是反轉乙個單鏈表。思路1 重新開闢記憶體,簡歷乙個新鍊錶,然後從後面往前面複製。由於單鏈表無法很容易得到當前節點前面的節點,所以,複製每乙個節點都得從前往後找到該節點,單個節點複製的時間複雜度為o n 整個複雜度則為o n 2 空間複雜度為o n 不可取。思路2 不開闢新記憶體,採...

1 單鏈表 c實現 詳細注釋

include include include 建立單鏈表的成員 其實就是結點 link p p就是乙個結點 typedef struct link link link 為這個結構體的別名 初始化鍊錶 link initlink return p 鍊錶的基本操作 對鍊錶進行插入 link inser...