鍊錶相關程式設計練習

2021-10-23 14:33:11 字數 764 閱讀 2994

合併兩個有序的鍊錶

思路:目的是將兩個有序的鍊錶合併為新的有序列表,我們每次操作的都是要獲取l1指向結點和l2指向結點中,值較小的結點。

遞迴 解題:

函式返回值:返回l1指向的結點和l2指向的結點中,值較小的結點。

並且將從下級函式獲得的返回值,鏈結到當前結點next

結束條件:至少有乙個為空,返回剩下的

/**

* definition for singly-linked list.

* struct listnode

* };

*/class

solution

else}}

;

反轉鍊錶

定義乙個函式,輸入乙個鍊錶的頭節點,反轉該鍊錶並輸出反轉後鍊錶的頭節點。

思路:1、利用兩個指標prev、cur,prev指向頭節點,cur指向空。pre在前,cur在後

2、實現區域性的反轉,就是prev的next指向cur

3、反轉完,prev和cur繼續向前走一步。

4、迴圈以上的過程

/**

* definition for singly-linked list.

* struct listnode

* };

*/class

solution

return cur;}}

;

鍊錶相關程式設計題 Python

從尾到頭列印鍊錶 鍊錶中倒數第k個結點 class solution def findkthtotail self,head,k write code here if not head return none pfast,pslow head,head for i in range k if pfa...

鍊錶相關操作

include include using namespace std 鍊錶結構體 struct listnode 是否為空 bool isempty listnode list position是否是最後乙個 bool islast listnode position,listnode list ...

鍊錶相關操作

class listnode 1.鍊錶反轉,遍歷原鍊錶,採用頭插法將數值插入新鍊錶 public listnode reverse listnode p return cur 2.兩個鍊錶相加,如 1 2 3加4 5 6等於5 7 9。思路 短的鍊錶高位用0補。public class soluti...