LeetCode Merge Two Sorted Lists
2013-12-17 08:20
483 查看
Merge Two Sorted Lists
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.
入门题目了,严蔚敏的书本好像一开始就介绍了这样的题目,以前死背了好多次,始终背不出来,现在已经不用背了,感觉随时都能写出不比书本差的程序。
本题就是考链表的操作了。
链表的操作是要练出感觉来的。
下面的程序提供到位操作,把链表2直接插入链表1中。
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.
入门题目了,严蔚敏的书本好像一开始就介绍了这样的题目,以前死背了好多次,始终背不出来,现在已经不用背了,感觉随时都能写出不比书本差的程序。
本题就是考链表的操作了。
链表的操作是要练出感觉来的。
下面的程序提供到位操作,把链表2直接插入链表1中。
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode *mergeTwoLists(ListNode *l1, ListNode *l2) { if (!l2) return l1; if (!l1) return l2; ListNode *h = l1; if (l1->val > l2->val) { ListNode *t = l2->next; l2->next = l1; h = l1 = l2; l2 = t; } while (l1->next && l2) { if (l1->next->val > l2->val) { ListNode *t = l2->next; l2->next = l1->next; l1->next = l2; l2 = t; } l1 = l1->next; } if (l2) l1->next = l2; return h; } };
//2014-2-8 update ListNode *mergeTwoLists(ListNode *l1, ListNode *l2) { ListNode dummy(0); ListNode *p = &dummy; while (l1 && l2) { if (l1->val > l2->val) { p->next = l2; l2 = l2->next; } else { p->next = l1; l1 = l1->next; } p = p->next; } if (l1) p->next = l1; else if (l2) p->next = l2; return dummy.next; }
相关文章推荐
- LeetCode 21. Merge Two Sorted Lists (Easy)
- LeetCode:Merge Two Sorted Lists
- LeetCode Merge Two Sorted Lists
- Leetcode-21 Merge Two Sorted Lists
- leetcode-21. Merge Two Sorted Lists
- 《leetCode》:Merge Two Sorted Lists
- [Leetcode] 21. Merge Two Sorted Lists
- leetcode之Merge Two Sorted Lists
- [LeetCode] Merge Two Sorted Lists 归并两个排好序的单链表
- LeetCode | #21 Merge Two Sorted Lists
- Java [leetcode 21]Merge Two Sorted Lists
- [Leetcode] 21 - Merge Two Sorted Lists
- Leetcode_21_Merge Two Sorted Lists
- leetcode(21). Merge Two Sorted Lists
- LeetCode_Merge Two Sorted Lists
- Leetcode 21. Merge Two Sorted Lists
- [LeetCode]Merge Two Sorted Lists
- leetcode:Merge Two Sorted Lists 【Java】
- LeetCode Merge Two Sorted Lists
- LeetCode 21 - Merge Two Sorted Lists