题目1519:合并两个排序的链表 九度 本地通过 参考别人的
来源:互联网 发布:淘宝直通车怎么进入 编辑:程序博客网 时间:2024/05/29 18:02
题目1519:合并两个排序的链表
时间限制:1 秒内存限制:128 兆特殊判题:否提交:1681解决:770
题目描述:
输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。
(hint: 请务必使用链表。)
输入:
输入可能包含多个测试样例,输入以EOF结束。
对于每个测试案例,输入的第一行为两个整数n和m(0<=n<=1000, 0<=m<=1000):n代表将要输入的第一个链表的元素的个数,m代表将要输入的第二个链表的元素的个数。
下面一行包括n个数t(1<=t<=1000000):代表链表一中的元素。接下来一行包含m个元素,s(1<=t<=1000000)。
输出:
对应每个测试案例,
若有结果,输出相应的链表。否则,输出NULL。
样例输入:
5 2
1 3 5 7 9
2 4
0 0
样例输出:
1 2 3 4 5 7 9
NULL
#include<iostream>#include<stdio.h>#include<string>#include<math.h>#include<map> #include<vector>#include<assert.h>using namespace std;struct node{ int val; node *next; node(int val) { this->val=val; this->next=NULL; } node() { this->val=0; this->next=NULL; }};int main(){// assert(freopen("text.txt","r",stdin)); int n,m; cin>>n>>m; if(n==0&&m==0) { cout<<"NULL"<<endl; return 0; } node *fp=new node(); cin>>fp->val; node *fHead=fp; for(int i=1;i<n;i++) { node *p=new node(); p->next=NULL; fp->next=p; fp=p; } node *sp=new node(); cin>>sp->val; node *sHead=sp; for(int i=1;i<m;i++) { node *p=new node(); p->next=NULL; cin>>p->val; sp->next=p; sp=p; } fp=fHead; sp=sHead; cout<<fp->val<<" "<<sp->val<<endl; node *rHead=new node(); node *rp=rHead; node *fNext=NULL,*sNext=NULL; while(fp&&sp) { fNext=fp->next; sNext=sp->next; if(fp->val<=sp->val) { fp->next=NULL; rp->next=fp; rp=fp; fp=fNext; } else { sp->next=NULL;; rp->next=sp; rp=sp; sp=sNext; } } if(fp) rp->next=fp; if(sp) rp->next=sp; rp=rHead->next; for(int i=0;i<n+m-1;i++) { cout<<rp->val<<" "; rp=rp->next; } cout<<rp->val<<endl; return 0;}
0 0
- 题目1519:合并两个排序的链表 九度 本地通过 参考别人的
- 题目1519:合并两个排序的链表-九度
- 九度 题目1519:合并两个排序的链表
- 九度_题目1519:合并两个排序的链表
- 【剑指Offer面试编程题】题目1519:合并两个排序的链表--九度OJ
- 九度OJ-题目1519:合并两个排序的链表
- [九度OnlineJudge][剑指Offer]题目1519:合并两个排序的链表
- 九度oj-合并两个排序的链表
- 题目1519:合并两个排序的链表
- 题目1519:合并两个排序的链表
- 题目1519:合并两个排序的链表
- 题目1519:合并两个排序的链表
- 题目1519:合并两个排序的链表
- 题目1519:合并两个排序的链表
- 题目1519:合并两个排序的链表
- 题目1519:合并两个排序的链表
- 题目1519:合并两个排序的链表
- 剑指Offer题目1519:合并两个排序的链表
- centos开启关闭防火墙
- sql server 2012版 学习笔记(基础版一)
- Android中的IPC方式
- Swift通过tabbar搭建主界面
- java内存空间详解
- 题目1519:合并两个排序的链表 九度 本地通过 参考别人的
- APK文件名不得有空格
- hdu 2203 亲和串
- 一次被驳回的没法看C++日志模块
- 关于ps切图的一款好用插件(cutterman),亲测好用
- Xcode8 iOS10上关于NSPhotoLibraryUsageDescription、NSCameraUsageDescription、
- javascript学习笔记(廖雪峰javascript教程)
- 利用js实现鼠标切换控件背景图片
- MFC编程学习过程记录