欢迎来到天天文库
浏览记录
ID:48017562
大小:44.00 KB
页数:8页
时间:2020-01-18
《顺序表基本操作的实现.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1、顺序表基本操作的实现[问题描述]当我们要在顺序表的第i个位置上插入一个元素时,必须先将顺序表中第i个元素之后的所有元素依次后移一个位置,以便腾空一个位置,再把新元素插入到该位置。若是欲删除第i个元素时,也必须把第i个元素之后的所有元素前移一个位置。[基本要求]要求生成顺序表时,可以键盘上读取元素,用顺序存储结构实现存储。#include#include"iostream.h"#defineMaxSize25typedefintDataType;classSeqList{DataT
2、ypelist[MaxSize];intlength;public:SeqList(){length=0;}voidSLCreat(intn);//创建顺序表voidSLInsert(inti,DataTypex);//在顺序表L中的第i个位置插入数据元素xvoidSLDelete(inti);//在顺序表L中的第i个位置删除数据元素DataTypeSLGet(inti);//获取第i个位置的元素位置DataTypeSLSum();//求和intSLIsEmpty();//判断顺序表是否为空voidSL
3、Print();//将顺序表显示在屏幕上};//创建顺序表voidSeqList::SLCreat(intn){DataTypex;cout<<"请输入数据元素值:";for(inti=0;i>x;list[i]=x;length++;}}//在顺序表L中的i位置插入数据元素xvoidSeqList::SLInsert(inti,DataTypex){intk;if(length>=MaxSize)cout<<"表已满,无法插入!"<4、5、i>len6、gth)cout<<"参数i不合理!"<i;k--){list[k]=list[k-1];}list[i]=list[i-1];list[i-1]=x;length++;}}//删除第i个位置的数据元素voidSeqList::SLDelete(inti){intk;if(!SLIsEmpty())cout<<"表已空,无法删除!"<7、8、i>length)cout<<"参数i不合理!"<9、i-1;k10、11、i>length){cout<<"参数i不合理!"<12、SLPrint(){if(!SLIsEmpty())cout<<"空表!"<13、表";cout<<"2.求第i个位置上的数值";cout<<"3.在第i个位置前上插入数值元素x";cout<<"4.删除第i个位置上的数值";cout<<"5.该顺序表上各元素之和";cout<<"6.输出显示";cout<<"7.退出";cout<<"特别说明:第一次请选择1,以后就不要选择1了!"<>select;switch(select){case1:cout<<"请输入顺序表长度:";cin>>14、n;mylist.SLCreat(n);cout<<"顺序表为:";mylist.SLPrint();break;case2:cout<<"请输入位置i:";cin>>i;cout<<"第"<>i>>x;mylist.SLInsert(i,x);mylist.SLPrint();b
4、
5、i>len
6、gth)cout<<"参数i不合理!"<i;k--){list[k]=list[k-1];}list[i]=list[i-1];list[i-1]=x;length++;}}//删除第i个位置的数据元素voidSeqList::SLDelete(inti){intk;if(!SLIsEmpty())cout<<"表已空,无法删除!"<7、8、i>length)cout<<"参数i不合理!"<9、i-1;k10、11、i>length){cout<<"参数i不合理!"<12、SLPrint(){if(!SLIsEmpty())cout<<"空表!"<13、表";cout<<"2.求第i个位置上的数值";cout<<"3.在第i个位置前上插入数值元素x";cout<<"4.删除第i个位置上的数值";cout<<"5.该顺序表上各元素之和";cout<<"6.输出显示";cout<<"7.退出";cout<<"特别说明:第一次请选择1,以后就不要选择1了!"<>select;switch(select){case1:cout<<"请输入顺序表长度:";cin>>14、n;mylist.SLCreat(n);cout<<"顺序表为:";mylist.SLPrint();break;case2:cout<<"请输入位置i:";cin>>i;cout<<"第"<>i>>x;mylist.SLInsert(i,x);mylist.SLPrint();b
7、
8、i>length)cout<<"参数i不合理!"<9、i-1;k10、11、i>length){cout<<"参数i不合理!"<12、SLPrint(){if(!SLIsEmpty())cout<<"空表!"<13、表";cout<<"2.求第i个位置上的数值";cout<<"3.在第i个位置前上插入数值元素x";cout<<"4.删除第i个位置上的数值";cout<<"5.该顺序表上各元素之和";cout<<"6.输出显示";cout<<"7.退出";cout<<"特别说明:第一次请选择1,以后就不要选择1了!"<>select;switch(select){case1:cout<<"请输入顺序表长度:";cin>>14、n;mylist.SLCreat(n);cout<<"顺序表为:";mylist.SLPrint();break;case2:cout<<"请输入位置i:";cin>>i;cout<<"第"<>i>>x;mylist.SLInsert(i,x);mylist.SLPrint();b
9、i-1;k10、11、i>length){cout<<"参数i不合理!"<12、SLPrint(){if(!SLIsEmpty())cout<<"空表!"<13、表";cout<<"2.求第i个位置上的数值";cout<<"3.在第i个位置前上插入数值元素x";cout<<"4.删除第i个位置上的数值";cout<<"5.该顺序表上各元素之和";cout<<"6.输出显示";cout<<"7.退出";cout<<"特别说明:第一次请选择1,以后就不要选择1了!"<>select;switch(select){case1:cout<<"请输入顺序表长度:";cin>>14、n;mylist.SLCreat(n);cout<<"顺序表为:";mylist.SLPrint();break;case2:cout<<"请输入位置i:";cin>>i;cout<<"第"<>i>>x;mylist.SLInsert(i,x);mylist.SLPrint();b
10、
11、i>length){cout<<"参数i不合理!"<12、SLPrint(){if(!SLIsEmpty())cout<<"空表!"<13、表";cout<<"2.求第i个位置上的数值";cout<<"3.在第i个位置前上插入数值元素x";cout<<"4.删除第i个位置上的数值";cout<<"5.该顺序表上各元素之和";cout<<"6.输出显示";cout<<"7.退出";cout<<"特别说明:第一次请选择1,以后就不要选择1了!"<>select;switch(select){case1:cout<<"请输入顺序表长度:";cin>>14、n;mylist.SLCreat(n);cout<<"顺序表为:";mylist.SLPrint();break;case2:cout<<"请输入位置i:";cin>>i;cout<<"第"<>i>>x;mylist.SLInsert(i,x);mylist.SLPrint();b
12、SLPrint(){if(!SLIsEmpty())cout<<"空表!"<13、表";cout<<"2.求第i个位置上的数值";cout<<"3.在第i个位置前上插入数值元素x";cout<<"4.删除第i个位置上的数值";cout<<"5.该顺序表上各元素之和";cout<<"6.输出显示";cout<<"7.退出";cout<<"特别说明:第一次请选择1,以后就不要选择1了!"<>select;switch(select){case1:cout<<"请输入顺序表长度:";cin>>14、n;mylist.SLCreat(n);cout<<"顺序表为:";mylist.SLPrint();break;case2:cout<<"请输入位置i:";cin>>i;cout<<"第"<>i>>x;mylist.SLInsert(i,x);mylist.SLPrint();b
13、表";cout<<"2.求第i个位置上的数值";cout<<"3.在第i个位置前上插入数值元素x";cout<<"4.删除第i个位置上的数值";cout<<"5.该顺序表上各元素之和";cout<<"6.输出显示";cout<<"7.退出";cout<<"特别说明:第一次请选择1,以后就不要选择1了!"<>select;switch(select){case1:cout<<"请输入顺序表长度:";cin>>
14、n;mylist.SLCreat(n);cout<<"顺序表为:";mylist.SLPrint();break;case2:cout<<"请输入位置i:";cin>>i;cout<<"第"<>i>>x;mylist.SLInsert(i,x);mylist.SLPrint();b
此文档下载收益归作者所有