【LeetCode】Merge Two Sorted Lists
来源:互联网 发布:人工智能英文音标 编辑:程序博客网 时间:2024/05/22 10:41
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. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode *mergeTwoLists(ListNode *l1, ListNode *l2) { if(NULL == l1 && NULL == l2) return NULL; else if(NULL == l1 && NULL != l2) return l2; else if(NULL == l2 && NULL != l1) return l1; ListNode *head = l1->val >= l2->val? l2 : l1; ListNode *p = head->next; ListNode *ret = head; ListNode *q = l1->val >= l2->val? l1 : l2; while(p && q) { if(p->val >= q->val) { ret->next = q; ret = q; q = q->next; } else { ret->next = p; ret = p; p = p->next; } } while(p) { ret->next = p; ret = p; p = p->next; } while(q) { ret->next = q; ret = q; q = q->next; } return head; }};
0 0
- LeetCode: Merge Two Sorted Lists
- [Leetcode] Merge Two Sorted Lists
- Leetcode: Merge Two Sorted Lists
- [LeetCode] Merge Two Sorted Lists
- [Leetcode] Merge two sorted lists
- leetcode Merge Two Sorted Lists
- [LeetCode]Merge Two Sorted Lists
- [leetcode]Merge Two Sorted Lists
- LeetCode-Merge Two Sorted Lists
- [leetcode] Merge Two Sorted Lists
- [LeetCode] Merge Two Sorted Lists
- LeetCode - Merge Two Sorted Lists
- LeetCode:Merge Two Sorted Lists
- LeetCode | Merge Two Sorted Lists
- 【leetcode】Merge Two Sorted Lists
- Leetcode: Merge Two Sorted Lists
- 【LeetCode】Merge Two Sorted Lists
- Leetcode Merge Two Sorted Lists
- java的初始化流程
- frame与bounds的关系与区别
- Pivotal Web Services SignUp
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- java之httpclient3.0版本
- 【LeetCode】Merge Two Sorted Lists
- 初始化一棵树
- cocos2d-x 2.2.2 建立与编译test工程
- Unit--problem4_量身制作旗袍
- myeclipse 优化(解决CPU占用过高)
- 初窥 quick-cocos2d-x
- Exercise 16: 读写文件
- jQuery基础教程学习笔记·第二章
- 文件批量下载