c 初級 之 反轉鍊錶

2021-08-08 02:16:46 字數 779 閱讀 8693

以下為例

//反轉乙個鍊錶

#include#includeusing namespace std;

struct link

;int main()//以下是面向過程的思想,仍是c的思想,先做什麼再做什麼;最好寫乙個鍊錶的類,把這些操作都封裝起來,例項化物件後可以隨用隨調,安全性也更好,這就是物件導向了。

p2->data = n-1;

p2->next = null;

//反轉鍊錶(沒問題)

link *pheadr,*p3;

p3 = phead;

p1 = new link;

p1->data = p3->data;

p1->next = null;

while(p3->next != null)

pheadr = p1;

//列印鍊錶(沒問題)

p1 = phead;

while(p1 != null)

cout << endl;

p1 = pheadr;

while(p1 != null)

//釋放記憶體(標準格式)

p2 = phead;

p1 = phead;

while(p1 != null)

p2 = pheadr;

p1 = pheadr;

while(p2 != null)

system("pause");

return 0;

}

執行結果:

LeetCode初級演算法之鍊錶 206 反轉鍊錶

題目資訊 反轉乙個單鏈表。示例 輸入 1 2 3 4 5 null 輸出 5 4 3 2 1 null 高階 你可以迭代或遞迴地反轉鍊錶。你能否用兩種方法解決這道題?解法一 迭代 反轉乙個鍊錶和陣列是不一樣的,因為不能任意取值,只能說按照next的順序依次往後放。那麼把乙個節點往後放的過程就是一次迭...

C初級 雙向鍊錶

雙鏈表的頭head能找到下乙個節點a,節點a不能訪問頭head 對於鍊錶中指標指向問題的說明 1.在定義結構體b時,在結構體內部定義了乙個指向上一位置a的指標 也定義了指向下一位置的指標c 在 中,一般將head next c head b head pre a 2.在進行插入操作時,有結構體指標p...

java之鍊錶反轉

題目 定義乙個函式,輸入乙個鍊錶的頭結點,反轉該鍊錶並輸出反轉後的頭節點,鍊錶的定義如下 class lnode public lnode int value public lnode int value,lnode next 反轉的 package linklist public class re...