LeetCode: 21. Merge Two Sorted Lists
2017-08-03 10:38
429 查看
Question
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists./** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */
Solution
public class Solution { public ListNode mergeTwoLists(ListNode l1, ListNode l2) { if (l1 == null && l2 == null) { return null; } if (l1 == null) { return l2; } if (l2 == null) { return l1; } ListNode result = new ListNode(0); ListNode prev = result; while (l1 != null && l2 != null) { if (l1.val <= l2.val) { prev.next = l1; l1 = l1.next; } else { prev.next = l2; l2 = l2.next; } prev = prev.next; } if (l1 != null) { prev.next = l1; } if (l2 != null) { prev.next = l2; } return result.next; } }
最为重要一点是使用了result进行初始化或叫做dummy 更贴切,这样解决了第一个结点next 指向不必判断是l1还是l2的结点带来的麻烦。
相关文章推荐
- 2018.1.8 LeetCode 21. Merge Two Sorted Lists 【链表的基本运用】
- LeetCode_21. Merge Two Sorted Lists
- [LeetCode] 21. Merge Two Sorted Lists 解题思路
- LeetCode 21. Merge Two Sorted Lists
- LeetCode21. Merge Two Sorted Lists
- LeetCode 21. Merge Two Sorted Lists
- leetcode_效率题解_[python/C++]_21. Merge Two Sorted Lists(合并2个有序链表)
- leetcode解题报告21. Merge Two Sorted Lists
- LeetCode 21. Merge Two Sorted Lists
- 【LeetCode】21. Merge Two Sorted Lists
- leetcode21. Merge Two Sorted Lists
- 21. Merge Two Sorted Lists leetcode Python 2016 new Season
- LeetCode 21. Merge Two Sorted Lists 两个有序列表合成一个
- LeetCode 21. Merge Two Sorted Lists 题解 —— Java
- LeetCode21. Merge Two Sorted Lists
- LeetCode题解(Week2):21. Merge Two Sorted Lists
- [leetcode] 21. Merge Two Sorted Lists 解题报告
- leetcode 21. Merge Two Sorted Lists 两个单向链表合并 指针与解指针
- LeetCode-21. Merge Two Sorted Lists
- leetcode21. Merge Two Sorted Lists