Merge Two Sorted Lists
来源:互联网 发布:淘宝众筹 淘宝怎么不管 编辑:程序博客网 时间:2024/05/01 07:59
原题地址:点我传送
这其实就是归并算法的归并一步。思想就是两个链表从头开始,每次比较小的往里面塞,到一个链表尽头后将另一个表的后面全部放到所求表的后面即可。
比较麻烦的是所求表ans开辟空间是先开辟在放数,所以一定要确定有即将插入的值时才开辟一个新的空间,否则就会多出一个“0”。
C++:
/** * 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) { ListNode* ans = new ListNode(0); ListNode* p = l1; ListNode* q = l2; ListNode* s = ans; if(!p&&!q)return NULL; while(p&&q) { if(p->val<q->val) { s->val=p->val; p=p->next; } else { s->val=q->val; q=q->next; } if(p||q) { s->next= new ListNode(0); s=s->next; } } if(!q) { while(p) { s->val=p->val; p=p->next; if(p) { s->next= new ListNode(0); s=s->next; } } } if(!p) { while(q) { s->val=q->val; q=q->next; if(q) { s->next= new ListNode(0); s=s->next; } } } return ans; }};
0 0
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Merge Two Sorted Lists
- Best Time to Buy and Sell Stock
- InteliJ Idea 2017.1 for Mac 版 objc[4163]: Class JavaLaunchHelper is implemented in both XXX提示
- Js 函数与对象的区别及原生链的理解
- 算法训练 输出米字形
- Apriori算法
- Merge Two Sorted Lists
- 马尔可夫模型的一步转移概率矩阵Java代码实现
- oracle数据库系列-Archivelog归档文件相关操作
- 建表
- Android6.1 开关机动画和Logo制作与修改
- 2012年第三届蓝桥杯C/C++程序设计本科B组省赛 方阵旋转(代码填空)
- Debian Stable (wheezy 7.8 )升级到最新的stable (Jessie 8.0)
- druid简单教程
- [李景山php]每天laravel[025]-laravel 基础知识 --- 中间件