劍指offer 面試題25 合併兩個排序的鍊錶

2021-10-02 20:10:47 字數 1018 閱讀 4153

//遞迴法

class

solution

else

return pmergedhead;}}

;//迭代法

class

solution

else

pmergedhead = pmergedhead-

>next;

} pmergedhead-

>next =

(l1 ==

nullptr

? l2 : l1)

;//最後退出迴圈如果是l1為nullptr,則將l2全部給head,如果是l2,則將l1全部給head

return ans-

>next;

//返回頭結點的下乙個結點}}

;

做題的時候,犯了一些文中提到的錯誤,如何進行合併,剛開始自己的思路是把l2插到l1裡面,但實際上發現行不通,自己的合併思路有一些錯誤

迭代法的思路,參考了迭代法思路

遞迴法的思路,參考自劍指offer書籍

迭代法

class

solution

else

cur = cur-

>next;

} cur-

>next = l1 ==

nullptr

? l2 : l1;

return mergehead-

>next;}}

;

遞迴法
class

solution

else

if(l2 ==

nullptr

) listnode* mergehead=

nullptr

;//將小的節點接在mergehead後面

if(l1-

>val>val)

else

return mergehead;}}

;

劍指offer面試題25

面試題25 二叉樹中和為某乙個值的路徑 二叉樹結點定義 struct binarytreenode 預備知識 vector中的push back是新增乙個元素 vector中的pop back是刪除乙個元素 二叉樹的操作 include stdafx.h include binarytree.h 建...

面試題25 劍指offer 合併兩個排序的鍊錶

題目 輸入兩個遞增序列鍊錶,合併這兩個鍊錶並使新鍊錶中的結點仍然是遞增排序的。思路 從頭開始比較兩個遞增的鍊錶,較小的節點比如list1先進入新鍊錶,然後list1.next與list2繼續比較,直至兩個鍊錶合併完成。public static listnode merge listnode lis...

劍指offer python 面試題2 5

使用python實現 劍指offer 面試題 以此記錄。題目 實現單例模式 單例模式,是一種常用的軟體設計模式。在它的核心結構中只包含乙個被稱為單例的特殊類。通過單例模式可以保證系統中,應用該模式的乙個類只有乙個例項。即乙個類只有乙個物件例項。原理 使用模組時,第一次匯入會生成.pyc檔案 存放相應...