SDUT-顺序表应用5:有序顺序表归并
来源:互联网 发布:淘宝怎么提取卡密 编辑:程序博客网 时间:2024/05/29 04:21
顺序表应用5:有序顺序表归并
Time Limit: 100MS Memory Limit: 880KB
Submit Statistic
Problem Description
已知顺序表A与B是两个有序的顺序表,其中存放的数据元素皆为普通整型,将A与B表归并为C表,要求C表包含了A、B表里所有元素,并且C表仍然保持有序。
Input
输入分为三行:
第一行输入m、n(1<=m,n<=10000)的值,即为表A、B的元素个数;
第二行输入m个有序的整数,即为表A的每一个元素;
第三行输入n个有序的整数,即为表B的每一个元素;
Output
输出为一行,即将表A、B合并为表C后,依次输出表C所存放的元素。
Example Input
5 31 3 5 6 92 4 10
Example Output
1 2 3 4 5 6 9 10
Hint
#include <bits/stdc++.h>using namespace std;typedef struct node{ int data[1000001]; int last;} st;st*l1,*l2,*l3;int n,m,i;st*makeempty(){ st*l; l=(st*)malloc(sizeof(st)); l->last=-1; return l;}st*build(st*l,int n){ int i; for(i=0; i<n; i++) { scanf("%d", &l->data[i]); getchar(); } l->last=n; return l;}st*Merge(st*l1,st*l2,int n,int m){ l3=makeempty(); for(i=0;i<n;i++) { l3->data[i]=l1->data[i]; } for(i=n;i<m+n;i++) { l3->data[i]=l2->data[i-n]; } sort(l3->data,l3->data+m+n); return l3;}void show(st*l,int n){ int i; for(i=0; i<n; i++) { printf("%d%c",l->data[i],i==n-1?'\n':' '); }}int main(){ scanf("%d %d",&n,&m); l1=makeempty(); l2=makeempty(); l1=build(l1,n); l2=build(l2,m); l3=Merge(l1,l2,n,m); show(l3,m+n); return 0;}
阅读全文
0 0
- sdut oj3329 顺序表应用5:有序顺序表归并
- SDUT 3329 顺序表应用5:有序顺序表归并
- SDUT-顺序表应用5:有序顺序表归并
- SDUT 3329 顺序表应用5:有序顺序表归并
- [SDUT](3329)顺序表应用5:有序顺序表归并 ---有序表归并(线性表)
- SDUT 顺序表应用5:有序顺序表归并(插入排序)
- SDUT 3329----顺序表应用5:有序顺序表归并(很经典)
- 顺序表应用 有序顺序表 归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 【3329】顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- 顺序表应用5:有序顺序表归并
- POJ 3268
- 哈夫曼树--九度OJ-1172
- 网站文章编辑的注意事项
- EMF学习笔记(三)——使用EMF编程——持久化
- mysql遇到的问题
- SDUT-顺序表应用5:有序顺序表归并
- Jdk8之lambda表达式的使用(二)
- 使用SOOT命令行对APK文件进行解码及包装
- TASKCTL4.1不同版本下载
- PAT 1061判断题
- hellocharts图表插件---折线图
- codevs[3554]犯罪团伙
- 函数表达式的函数声明提升
- Vysor:在电脑里控制你的安卓手机