博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基础数据结构-线性表-顺序表的合并操作
阅读量:6268 次
发布时间:2019-06-22

本文共 2061 字,大约阅读时间需要 6 分钟。

因为最近笔记本B面裂了准备去修,复杂些的会优先加上注释,所以在家先把代码和题目贴上来以后补文字,有疑问可以在下面留言。

 

顺序表的合并操作

题目描述

建立顺序表的类,属性包括:数组、实际长度、最大长度(设定为1000)

已知两个递增序列,把两个序列的数据合并到顺序表中,并使得顺序表的数据递增有序

输入
第1行先输入n表示有n个数据,接着输入n个数据,表示第1个序列,要求数据递增互不等

第2行先输入m表示有m个数据,接着输入m个数据,表示第2个序列,要求数据递增互不等

输出
顺序表内容包括顺序表的实际长度和数据,数据之间用空格隔开

第1行输出创建后的顺序表内容

样例输入

3 11 33 55
5 22 44 66 88 99

样例输出

8 11 22 33 44 55 66 88 99

#include
using namespace std;#define ok 0#define error -1class SeqList{private: int *list; int maxsize; int size;public: SeqList(); ~SeqList(); int list_size(); int list_insert(int i,int item); int list_del(int i); int list_get(int i); void list_display(); int get(int i); //新建get函数};SeqList::SeqList(){ maxsize = 1000; size = 0; list = new int[maxsize];}SeqList::~SeqList(){ delete []list;}int SeqList::list_size(){ return size;}void SeqList::list_display(){ int i; cout << size << ' '; for(i=0;i
size+1) return error; else{ int n; for(n=size;n>=i;n--) list[n] = list[n-1]; list[i-1] = item; size++; return ok; }}int SeqList::list_get(int i){ if (i<1||i>size) return error; else { cout << list[i-1] << endl; return ok; }} int SeqList::get(int i){ return list[i];}int main(){ int i,j,size,item; SeqList LA,LB; //思路:将要合并的两组数据放入两个线性表中,上下匹配,遇到较大的数据放后,最终合并到B cin >> size; for(i=1;i<=size;i++) { cin >> item; LA.list_insert(i,item); } cin >> size; for(i=1;i<=size;i++) { cin >> item; LB.list_insert(i,item); } for(i=0;i<=LA.list_size()-1;i++) { for(j=0;j<=LB.list_size()-1;j++) { if(LA.get(i)<=LB.get(j)) { LB.list_insert(j+1,LA.get(i)); break; } if(j==LB.list_size()-1) { LB.list_insert(j+2,LA.get(i)); break; } } } LB.list_display(); return 0;}

 

转载于:https://www.cnblogs.com/nathaneko/p/6491086.html

你可能感兴趣的文章
matlab练习程序(图像Haar小波变换)
查看>>
【Java】从域名得到ip
查看>>
Mysql索引会失效的几种情况分析
查看>>
LVM逻辑卷
查看>>
zoj3591 Nim(Nim博弈)
查看>>
canvas绘图
查看>>
poj - 3039 Margaritas on the River Walk
查看>>
bootstrap(5)关于导航
查看>>
Aptana插件在eclipse中安装
查看>>
jQuery-数据管理-删除事件
查看>>
下载器简单实例
查看>>
java实现分页工具类(JDBC)
查看>>
欧几里德算法与扩展欧几里德算法
查看>>
Tinkoff Internship Warmup Round 2018 and Codeforces Round #475 (Div. 2)
查看>>
通过kafka提供的命令来查看offset消费情况
查看>>
oracle数据库从入门到精通之四
查看>>
自定义圆形图片控件
查看>>
sharepoint 2013 补丁升级步骤
查看>>
asp.net core 2.0 web api基于JWT自定义策略授权
查看>>
Skype for Business Server 2015-04-前端服务器-3-安装-管理工具
查看>>