leetcode 合併兩個有序鍊錶

2021-10-01 18:04:38 字數 540 閱讀 5996

/**

* definition for singly-linked list.

* public class listnode

* }*/class solution

if(l2==null)

listnode retnode = null;

listnode temnode = null;

while(l1 != null || l2 != null)

else if(l2==null)

else{

int l1val = l1.val;

int l2val = l2.val;

if(l1val合併兩個排序列表:

我的解法是維護乙個while迴圈,直到l1和l2都是null。while中判斷l1和l2中較小值。然後將該煉表頭指標指向下乙個節點。我們定義乙個temnode去新增這個較小值,思路還是很清晰的。

我的乙個常用做法是開始時初始化兩個node,乙個是固定的頭node(**中的retnode),另乙個是動態的滑動node(**中的temnode)

LeetCode 合併兩個有序鍊錶

將兩個有序鍊錶合併為乙個新的有序鍊錶並返回。新煉表是通過拼接給定的兩個鍊錶的所有節點組成的。示例 輸入 1 2 4,1 3 4輸出 1 1 2 3 4 4class solution else listnode p new head while l1 null l2 null else p p ne...

LeetCode 合併兩個有序鍊錶

將兩個有序鍊錶合併為乙個新的有序鍊錶並返回。新煉表是通過拼接給定的兩個鍊錶的所有節點組成的。示例 輸入 1 2 4,1 3 4 輸出 1 1 2 3 4 4 struct listnode mergetwolists struct listnode l1,struct listnode l2 els...

Leetcode合併兩個有序鍊錶

public class listnode listnode prehead new listnode 0 listnode pre prehead while l1 null l2 null if l1.val寫點 用了乙個虛擬頭節點,new listnode 0 括號裡面寫啥都行,具體為什麼用虛...