顺序表应用5:有序顺序表归并

来源:互联网 发布:非洲 知乎 编辑:程序博客网 时间:2024/06/11 00:18

顺序表应用5:有序顺序表归并

Time Limit: 100ms   Memory limit: 800K  有疑问?点这里^_^

题目描述

已知顺序表A与B是两个有序的顺序表,其中存放的数据元素皆为普通整型,将A与B表归并为C表,要求C表包含了A、B表里所有元素,并且C表仍然保持有序。

输入

 输入分为三行:
第一行输入m、n(1<=m,n<=10000)的值,即为表A、B的元素个数;
第二行输入m个有序的整数,即为表A的每一个元素;
第三行输入n个有序的整数,即为表B的每一个元素;

输出

 输出为一行,即将表A、B合并为表C后,依次输出表C所存放的元素。

示例输入

5 31 3 5 6 92 4 10

示例输出

1 2 3 4 5 6 9 10

<span style="font-size:18px;">#include<iostream>#include<cstdlib>#define MAX 10001using namespace std;typedef struct{    int *elem;    int length;    int Listsize;}List;    List A,B,C;void creat(List &L,int n){    L.elem=new int[MAX];    if(!L.elem)        exit(0);    L.length=0;    for(int i=0;i<n;i++)    {        cin>>L.elem[i];        L.length++;    }    L.Listsize=n;}void Merge(List &C,List A,List B ){    C.elem=new int[2*MAX];    if(!C.elem)        exit(0);        C.length=0;        int i=0,j=0,k=0;    while(i<A.length&&j<B.length)    {       if(A.elem[i]<B.elem[j])       {           C.elem[k++]=A.elem[i];           i++;           C.length++;       }       else       {           C.elem[k++]=B.elem[j];           j++;           C.length++;       }    }       while(i<A.length)       {           C.elem[k++]=A.elem[i];           i++;           C.length++;       }       while(j<B.length)       {           C.elem[k++]=B.elem[j];           j++;           C.length++;       }}void show(List C){    int i;    for(i=0;i<C.length;i++)    {        if(i==C.length-1)            cout<<C.elem[i]<<endl;        else            cout<<C.elem[i]<<" ";    }}int main(){    int m,n;    cin>>n>>m;    creat(A,n);    creat(B,m);    Merge(C,A,B);    show(C);    return 0;}</span>
先建立两个顺序表,然后逐一比较表中数据,将较小的一个数插入新建归并表中,再判断顺序表中的数是否都归并;最后输出。

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 车停在4s店损坏怎么办 车辆年检贴丢了怎么办 卖衣服别人嫌贵怎么办 武汉铁路医保卡丢了怎么办 高铁列车员年龄大了怎么办 尚客优酒店会员怎么办 钢铁雄心4人力不足怎么办 未经车主同意私自将车卖了怎么办 剧本给几个制片人看过怎么办 没有产品经理ui设计师怎么办 老板请朋友吃饭司机应该怎么办 被化妆学校坑了怎么办 快车约得太远怎么办 工资好低2000多怎么办 苹果手机不能下载软件怎么办 苹果手机下不了软件怎么办 苹果6s下不了软件怎么办 苹果6下不了软件怎么办 ipad更新系统卡住了怎么办 ipad卡住了关不了机怎么办 ipad卡住了没反应怎么办 苹果7下不了软件怎么办 苹果手机开机密码忘了怎么办 苹果开机密码忘了怎么办 我的ipad很卡怎么办 6s升级后卡顿严重怎么办 软件升级后手机卡顿怎么办 ps通道抠图模糊怎么办 电脑锁屏死机了怎么办 ipad电源键坏了怎么办 华为平板死机黑屏了怎么办 苹果4s锁屏键坏了怎么办 平板电脑密码锁忘记密码怎么办 苹果平板电脑密码锁忘记密码怎么办 平板电脑密码锁密码锁死怎么办 小米平板黑屏按键亮怎么办 小米平板黑屏没反应怎么办 小米平板一刷黑屏了怎么办 小米4卡死了怎么办啊 苹果平板电脑开不了机怎么办 ipad开不了机怎么办都是黑屏