顺序表的实现,包含插入删除查找等操作,完整源代码,有注释,包你喜欢

上传人:壹****1 文档编号:512879415 上传时间:2023-11-09 格式:DOC 页数:8 大小:61.50KB
返回 下载 相关 举报
顺序表的实现,包含插入删除查找等操作,完整源代码,有注释,包你喜欢_第1页
第1页 / 共8页
顺序表的实现,包含插入删除查找等操作,完整源代码,有注释,包你喜欢_第2页
第2页 / 共8页
顺序表的实现,包含插入删除查找等操作,完整源代码,有注释,包你喜欢_第3页
第3页 / 共8页
顺序表的实现,包含插入删除查找等操作,完整源代码,有注释,包你喜欢_第4页
第4页 / 共8页
顺序表的实现,包含插入删除查找等操作,完整源代码,有注释,包你喜欢_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《顺序表的实现,包含插入删除查找等操作,完整源代码,有注释,包你喜欢》由会员分享,可在线阅读,更多相关《顺序表的实现,包含插入删除查找等操作,完整源代码,有注释,包你喜欢(8页珍藏版)》请在金锄头文库上搜索。

1、For personal use only in study and research; not for commercial use实验一顺序表的实现实验目的:熟练掌握顺序表的基本操作(插入、删除、查找等)实验内容:顺序表中的基本操作的实现(初始化、插入、删除、求表长、按值查 找、按位置查找)实验要求:以顺序表的动态分配存储结构来实现;所有基本操作均应该以函数的 形式表示;要有运行结果并考虑到顺序表中所有情况。一、实验算法描述:1、顺序表的声明和创建typedef structint* data;/int* 型元素int len gth; 顺序表的实际长度int listsize;/顺序表的

2、最大长度sqlist;void creatsqlist(sqlist & list)list.data=(int*)malloc(sizeof(int)*maxsize); 开辟一个名为 l 的顺序表 if(!list.data)判断顺序表是否存在exit(1);list.le ngth=O;list.listsize=maxsize;2、初始化函数 initsqlist(list)void initsqlist(sqlist &list)/ 初始化操作int* p;int n;coutvv请输入顺序表元素数(1-50):vvendl;让用户输入顺序表元素个数 cinn;cout您申请的顺序表

3、的长度是-nendl; p=list.data;/p指向头指针coutvv请依次输入无重复数字的有序顺序表(相邻数据用空格隔开,回车键完成输入):vve ndl;for(int i=0;i *p; p+; list.length+;coutvv您输入的递增顺序表为:end;/打印出初始化的顺序表 for(i=0;in;i+)coutlist.datait;coutendl;3、输出函数 put(list)void put(sqlist &list) / 输出函数 int i;for(i=0;ilist.length;i+) coutlist.datait;coutb;for(i=0;ivlis

4、t.length;i+) if(list.datai=b)j=i+1;break;if(j) coutvv该数字的位置是:wjwendl;elsecoutvv很抱歉,表中没有这个数字,请重试!i;int x;coutvv请输入要插入的数字:n;cinx;int j;if(iv0|ilist.length)cout位置错误=i;j-)list.dataj=list.dataj-1; list.dataj=x;list.length+;coutvv插入操作完成后的顺序表:e ndl;put(list);6、删除函数 delete1(list和 delete2(list)void delete1(s

5、qlist &list)/ 删除第 i 个位置的数字的函数int i,b;coutvv请输入你想要删除数据的位置:i;if(iv0|ilist.length)coutvv 输入错误! vvendl;return;elseb=list.datai-1;for(i=i-1;ivlist.length-1;i+) list.datai=list.datai+1;-list.length;coutvv需要删除的元素是:vvbvvendl;coutvv删除操作完成后的顺序表是:b;int i,j=0;for(i=0;ivlist.length;i+)if(list.datai=b)j=i+1;break

6、;if(j!=0)for(;ilist.length-2 ;i+) list.datai=list.datai+1;-list.length;cout该位置是第i位endl; coutvv删除操作完成后的顺序表是:endl; put(list);else coutvv很遗憾,表中没有找到此数字,删除不成功,请重试!e ndl;二、实验程序描述:主函数如下:int main()int flag;sqlist l;creatsqlist(l);initsqlist(l);coutvvendlvv*、vvendl;f*coutvv请输入要进行的操作序号:n;cout1.插入字符endl2.查找数字e

7、ndl3.删除第i位数字endl4.删除指定数字endl0.退出endlflag; doswitch(flag)case 1: insert(l);break;case 2:locateElem(l);break;case 3:delete1(l);break;case 4:delete2(l);break;default:coutvv请重新输入|代码错误endl;*vvendl;coutvv请输入要进行的操作序号:n;coutvv1.插入字符vvendlvv2.查找数字vvendlvv3.删除第i位数字12行竭数 进符字询定 要字数聶 入入找 噩查WW退请3 4IBendl4.删除指定数字e

8、ndl0.退出 flag; while(flag!=0); return 0;三、实验结果(输入和输出):1、输入界面:请输入顺序表元素数C1-石亦=您申请的顺序表的长度是一T请梅茨输入无重复教字的有序顺序表(相邻数据用空格隔开,回车犍完成输入):a a c -| q g 19 体输入的递増顺序表为=02、插入操作:!5行翊数 进符字朮定 S8S 入入找 聾查轴退rj乍想在第几位插入数字二 鲁输入要插入的数字:25012插入操作完成后的顺序表:-102509号序作操 JF 的嫦字 行釁 进符字ic定 要字数聶 入入找 薯查删删退 隹屈2.3.4.0-请输如要查找的字符匕8很抱歉,表中没有这个数

9、字,请重试!4、删除操作:【十-戶-tehr亍-斷符字述定-要字数薯“入入找33-薯查退为输入你想要删除数据的位置; 語要删陈的元龛是:9*_亠_“顺序表是:25015kl01212 3 4 0WP 女W 行请数 进符字止定 要字数薯 入入找 薯*删删退输入您想删除的数字=备位簟是第诡删除藻毎完成后的顺序表是:-102501399仅供个人用于学习、研究;不得用于商业用途For personal use only in study and research; not for commercial use.Nur f u r den pers?nlichen f u r Studien, Fors

10、chung, zu kommerziellen Zwecken verwendet werden.Pour l e tude et la recherche uniquementa des fins personnelles; pasa des fins commerciales.to员bko gA.nrogeHKO TOpMenob3ymrnflCH6yHeHuac egoB u HHuefigoHMUCnO 员 B30BaTbCEb KOMMepqeckuxue 贝 ex.仅供个人用于学习、研究;不得用于商业用途For personal use only in study and rese

11、arch; not for commercial use.Nur f u r den pers?nlichen f u r Studien, Forschung, zu kommerziellen Zwecken verwendet werden.Pour l e tude et la recherche uniquementa des fins personnelles; pasa des mercialeto员bko gA.nrogeHKO TOpMenob3ygoiflCH6yHeHuac egoB u HHuefigoHMucno 员 B30BaTbCEb KOMMepqeckuxqe 员 ex.

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号