單鏈表逆置

2021-04-18 01:49:32 字數 981 閱讀 2814

單鏈表逆置

#include

#include

#define

item_num 10

typedef

struct

tagnode node;

node

* linklist_create();

void

linklist_destroy(node* head);

void

linklist_print(node* head);

node

* linklist_reverse(node* head);

intmain(int

argc,char* agrv)

node

* linklist_create()

return

nodes;   }

void

linklist_destroy(node* head)

void

linklist_print(node* head)

} node

* linklist_reverse(node* head)

return

prenode;//

當遍歷完煉表後

curnode

應該為空,此時

prenode

就是逆置後鍊表頭

(head) }

執行結果:

create link list...

the link list data is:36

9121518

2124

2730

after reversed,the link list data is:

3027

2421

1815129

63destroy the link list...

單鏈表逆置

name 單鏈表逆置 author 巧若拙 date 22 11 14 16 13 description 分別用遞迴和非遞迴兩種方式實現單鏈表 不含頭結點 的逆置 include include include typedef char elemtype typedef int status 函式...

單鏈表逆置

最近在leetcode oj上刷題,將一些演算法題的解法記錄下來,也期待一些新的更好的方法。題目是這樣滴 206.reverse linked list reverse a singly linked list.hint a linked list can be reversed either it...

單鏈表逆置

明確題目要求不能使用額外的節點儲存空間,額外的節點儲存空間做中轉。在不使用額外儲存節點的情況下使乙個單鏈表的所有節點逆序?可以通過迭代迴圈的思想來處理 使用頭指標依次向後遍歷,遇到資料結點時將相鄰的兩個前驅後繼的關係進行乙個逆置 首先考慮到頭節點時空結點,略去頭結點並釋放 struct node p...