LeetCode 21. Merge Two Sorted Lists 解題紀錄
Contents
題目
Problem
You are given the heads of two sorted linked lists list1 and list2.
Merge the two lists in a one sorted list. The list should be made by splicing together the nodes of the first two lists.
Return the head of the merged linked list.
Example 1:
Input: list1 = [1,2,4], list2 = [1,3,4]
Output: [1,1,2,3,4,4]
Example 2:
Input: list1 = [], list2 = []
Output: []
Example 3:
Input: list1 = [], list2 = [0]
Output: [0]
Constraints:
- The number of nodes in both lists is in the range .
- -100
Node.val
100 - Both
list1
andlist2
are sorted in non-decreasing order.
想法
ListNode 的新增在 這邊,如果非必要,我還是比較喜歡用指標,光是不用一直切換 node.next
還是 node->next
就省很多力氣了 😊
概念類似於 Merge Sorted Array,但是 Linked List 不能偷吃步從最末端開始 sort。
從兩個 Linked List 最前端一一比較、放入新的 Linked List newList
。
最後別忘記把剩下不需要比較的 nodes 放進排序好的 newList
啊。
解法
|
解法二
- Time complexity: .
- Space complexity: .