leetcode 合併兩個排序的鍊錶

2021-10-25 12:30:22 字數 819 閱讀 5801

合併兩個排序的鍊錶:

輸入兩個遞增排序的鍊錶,合併這兩個鍊錶並使新鍊錶中的節點仍然是遞增排序的。

示例1:

輸入:1->2->4, 1->3->4

輸出:1->1->2->3->4->4

思路:1、第乙個加入空的頭結點

2、將第二個l2和第乙個的l1進行比較,[pre,l1],如果小於l1就插入這中間,且pre+1;

如果大於l1,則遞推[pre,l1],全部+1;

3、如果l1已經找完了都沒找到大於l2的資料,此時l1先退出,則將第乙個的尾結點指向這個l2的結點。

4、如果l2先找完了,那麼說明l2資料全部小於l1。

**:

/**

* definition for singly-linked list.

* struct listnode

* };

*/class

solution

else}if

(l2 !=

null

)return newnode-

>next;}}

;

或者,自己寫的**,做了修改

/**

* definition for singly-linked list.

* struct listnode

* };

*/class

solution

else}if

(q !=

null

)return l1-

>next;}}

;

LeetCode 合併兩個排序的鍊錶

題目描述 輸入兩個遞增排序的鍊錶,合併這兩個鍊錶並使新鍊錶中的節點仍然是遞增排序的。示例1 輸入 1 2 4,1 3 4 輸出 1 1 2 3 4 4 限制 0 鍊錶長度 1000 思路 建立頭結點。依次指向兩個鍊錶中較小的節點,被選中的節點後移一位。注意乙個鍊錶結束,另乙個鍊錶還有很長一段的情況。...

合併兩個排序的陣列

includeusing namespace std 有兩個排序的陣列a1和a2,內存在a1的末尾有足夠多的空餘空間容納a2.實現乙個函式,把a2中的所有數字插入到a 中並且所有的數字是排序的。思路 先計算出兩個陣列中元素的總個數,然後從尾到頭比較array1和array2中的數字,並把較大的數字複...

合併兩個排序的列表

輸入兩個單調遞增的鍊錶,輸出兩個鍊錶合成後的鍊錶,當然我們需要合成後的鍊錶滿足單調不減規則。輸入 返回值 由於兩個鍊錶都是遞增的,所以我們可以在遍歷的同時,判斷每個鍊錶當前各自值的大小,取出較小的那個,作為新鍊錶的結點,否則取另乙個,直到乙個鍊錶為空,將剩下乙個鍊錶拼接至新鍊錶尾端 注意 建立鍊錶使...