以下為例
//反轉乙個鍊錶
#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...