数据结构线性表与链表实验论文.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构 上机实验1 班级:计科1303 姓名:辛颖 学号:2013310200324 一、实验题目:线性表 二、实验目的: 1、熟悉将算法转换为程序代码的过程; 2、了解顺序表的逻辑结构特性,熟悉掌握顺序表存储结构的C语言描述方法; 3、熟悉掌握顺序表的基本运算:查找、插入、删除,掌握顺序表的随机存储特性; 4、了解线性表的链式存储结构及其顺序存储特性,熟悉掌握线性表的链式存储结构的C语言描述方法; 5、熟悉掌握线性链表(单链表)的基本运算:查找、插入、删除等,能在实际应用中灵活选择适当的链表结构; 6、掌握使用链表表示特定形式数据的方法,并能编写相关运算的算法。 三、实验要求: 熟悉顺序表的插入、删除和查找。 熟悉单链表的插入、删除和查找。 熟悉双链表的插入、删除和查找。 四、实验内容和实验步骤: 1、 #includestdio.h #includestdlib.h #includemalloc.h #define MaxSize 20 typedef int ElemType; typedef struct SeqList {//线性表顺序存储结构定义 ElemType elem[MaxSize]; int length; }SeqList; int Init_SeqList(SeqList L) { L.length=0; return 1;} int Locate_SeqList(SeqList L,int x) { int i=0; while(iL.lengthL.elem[i] != x) i++; if(i=L.length){printf(顺序表中不存在该元素!\n);return 0;} else return i+1; } int Insert_SeqList(SeqList L,int i,int x) {//在顺序存储结构的线性表的第i个数据元素之前插入新元素x,1=i=n+1 int j; if(L.length=MaxSize) { printf(顺序表已满,无法进行插入操作!);return 0;} if(i=0||iL.length+1) { printf(插入位置不正确!);return 0;} for(j=L.length-1;j=i-1;j--) { L.elem[j+1]=L.elem[j]; L.elem[i-1]=x; L.length++; return 1; } } int Delete_SeqList(SeqList L,int i) {//在顺序存储结构的线性表中删除第i个元素,1=iL.length int j; if((i1)||(iL.length)) { printf(删除位置不正确!);return 0;} for(j=1;jL.length;j++) L.elem[j-1]=L.elem[j]; L.length--; return 1; } int Display_SeqList(SeqList L) {//顺序表的显示 int i; for(i=0;iL.length;i++) printf(%d,L.elem [i]); return 1; } void main() { SeqList L; ElemType e,x; int i=1,k,j; Init_SeqList(L); printf(初始化\n建立顺序表如下:\n); Insert_SeqList(L,1,1); Insert_SeqList(L,2,2);Insert_SeqList(L,3,3); Insert_SeqList(L,4,4);Display_SeqList(L);printf(\n); while(i=3) { printf(\n 主菜单 \n); printf( 1 查找指定元素\n); printf( 2 插入元素到指定位置\n); printf( 0 结束程序\n); printf(-------------------------------\n); printf(请输入您选择的菜单号1,2,3,0:); scanf(%d,i); switch (i) { case 1 : printf(请输入查找元素:);scanf(%d,x); j=Locate_SeqList(L,x); if(j!=0) printf(指定元素位置=%d\n,j); break;

文档评论(0)

wyjy + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档