LeetCode --- 21. Merge Two Sorted Lists
来源:互联网 发布:监狱的公主大人 知乎 编辑:程序博客网 时间:2024/05/18 09:18
题目链接: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.
这道题的要求是将两个已经排好序的链表合并成1个有序链表。
这道题的思路比较简单,主要就是考察链表的处理。这里还是像Remove Nth Node From End of List一样先在链表前面加头,这样可以免去对链表头的特殊处理。接下来就是每次取两个链表前面较小的元素,直到有链表到达结尾。最后再将没有到达结尾的链表直接链接到合并的链表的后面,并返回合并后链表头后面的节点指针即可。
时间复杂度:O(n)
空间复杂度:O(1)
1 class Solution 2 { 3 public: 4 ListNode *mergeTwoLists(ListNode *l1, ListNode *l2) 5 { 6 ListNode *h = new ListNode(0), *p = h; 7 8 while(l1 != NULL && l2 != NULL) 9 {10 if(l1 -> val < l2 -> val)11 {12 p -> next = l1;13 l1 = l1 -> next;14 }15 else16 {17 p -> next = l2;18 l2 = l2 -> next;19 }20 21 p = p -> next;22 }23 24 if(l1 != NULL)25 p -> next = l1;26 if(l2 != NULL)27 p -> next = l2;28 29 return h -> next;30 }31 };
转载请说明出处:LeetCode --- 21. Merge Two Sorted Lists
2 0
- 21. Merge Two Sorted Lists leetcode(lists)
- [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】21.Merge Two Sorted Lists
- 【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 OJ> 21. Merge Two Sorted Lists
- 21. Merge Two Sorted Lists LeetCode
- leetcode 21. 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
- Effective Java 2nd 阅读 第三章 所有对象都适用的方法
- vb.net利用反射实现字符串调用窗体功能
- php数组去重
- 四大Linux图形界面赏析:KDE、Gnome、Xfce、LXDE
- 黑马程序员——05-核心语法之一
- LeetCode --- 21. Merge Two Sorted Lists
- nyoj85——炮兵阵地——————【状态压缩、动态规划】
- 内部类
- 控制多个datawindow数据合并成一个excel导出【PB】
- 以全局的固定顺序获取多个锁来避免死锁
- acm1089
- LeetCode --- 22. Generate Parentheses
- nyoj 523 亡命逃窜
- 郁金香灬老师 最新 游戏外挂制作教程