單鏈表反轉(帶頭結點版)

2021-07-29 05:16:16 字數 608 閱讀 9801

#ifndef reverse_list_h_included

#define reverse_list_h_included

linklist reverse_list(linklist head)

p2=(linklist)malloc(sizeof(lnode));//將內容為null的p2重新分配空間 作為你像鍊錶的頭結點

p2->next=p1; //頭結點連上第乙個資料

head->next->next=

null;//head->next是第乙個資料 要讓第乙個資料裡的next指向null 使第乙個資料變成尾巴

head=p2; //頭指標指向頭結點

return head;

}#endif

// reverse_list_h_included

尤其注意尾節點的處理

由於是帶有頭結點的 所以要用head->next->next跳過原鍊錶的頭結點,直接將原第乙個資料的next指向null

這位高人寫的是不帶頭結點的版本

所謂頭結點就是乙個空的,可有可不有。頭指標指向頭結點、

單鏈表(帶頭結點)

按照自己的想法和思路寫了一下帶頭結點的單鏈表,並進行了測試,畢竟自己能力有限,可能有的地方沒有測試到,還可能存在一些潛在的錯誤。標頭檔案 include using namespace std typedef struct node node,link typedef struct list lis...

帶頭結點的單鏈表

帶頭結點的單鏈表 1 頭結點 在棧區開闢,指標域指向第乙個首元結點,資料域不儲存資料,可以儲存當前結點的個數 2 普通結點 無論是頭結點還是普通結點都是乙個結構體型別,由指標域和資料域組成 指標域指向下乙個結點,儲存下乙個結點的位址 資料域可以設定成聯合體型別,成員由資料元素和結點個數組成,之所以將...

單鏈表 帶頭結點

typedef struct lnodelnode,linklist 頭插法 linklist list headinsert linklist l returnl 尾插法 linklist list tailinsert linklist l r next null 尾結點指標置空 returnl...