首页 数据结构顺序表

数据结构顺序表

举报
开通vip

数据结构顺序表课 程 设 计 课程:程序设计基础 题目:顺序表9 班级:信管09级 姓名:李宁 学号:2009082263 设计时间:2010年06月28日——2010年07月09日 成绩: 指导教师:楼建华 一、题目 题目 顺序表9 结构 结构体(动态数组,尾元下标)指针 回传方式 函数值 操作 初始化,输出,插入,删除,查找,求表长,取元素,替换,清空 二、概要设计 1.设计要点 ⑴ ⑵ ⑶ 2.数据结构 ⑴逻辑结构:(a1,a2,a...

数据结构顺序表
课 程 设 计 课程:程序 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 基础 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 目:顺序 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 9 班级:信管09级 姓名:李宁 学号:2009082263 设计时间:2010年06月28日——2010年07月09日 成绩: 指导教师:楼建华 一、题目 题目 顺序表9 结构 结构体(动态数组,尾元下标)指针 回传方式 函数值 操作 初始化,输出,插入,删除,查找,求表长,取元素,替换,清空 二、概要设计 1.设计要点 ⑴ ⑵ ⑶ 2.数据结构 ⑴逻辑结构:(a1,a2,a3,…,an) ⑵存储结构:结构体(动态数组,尾元下标)指针 SeqList L L->last L->max L->a L->a[0] L->a[1] ... L->a[L->last] ... const int init_n=3,inc_n=2; typedef struct{ int n,max;//n是尾元下标,max是最大表长 datatype *a;//定义动态数组 }node,*list; 3.基本操作(声明函数) list Init()/*初始化*/ void Out(list L)/*输出*/ list Insert(list L,int I, datatype x)/*插入*/ list Delete(list L,int i)/*删除*/ int Location(list L,int x)/*查找*/ int (list L);/*表长*/ datatype (list L,int i);/*取元素*/ void (list L,int i,datatype x);/*替换*/ void (list L);/*清空*/ 三、源程序(附测试数据) #include using namespace std; typedef int datatype; const int init_n=3,inc_n=2; typedef struct{ int n,max;//n是尾元下标,max是最大表长 datatype *a;//定义动态数组 }node,*list; list Init(){/*初始化*/ list L=new node; L->a=(datatype*)malloc(init_n*sizeof(datatype)); if(!L->a){cout<<"内存不足!";exit(0);} L->max=init_n; L->n=-1; return L;/*成功,置空表*/ } void Out(list L){/*输出*/ int i; cout<<"("; if(L->n>-1)cout<a[0];/*输出首元*/ for(i=1;i<=L->n;i++) cout<<","<a[i];/*输出其它元素*/ cout<<")"; } int Ins(list L,int i,datatype x){/*插入*/ int j; if(i<1||i>L->n+2){cout<<"位置错!"; return 0;} if(L->n+1==L->max){ L->max+=inc_n; L->a=(datatype*)realloc(L->a,L->max*sizeof(datatype)); if(!L->a){cout<<"内存不足!";return 0;} } for(j=L->n++;j>=i-1;j--) L->a[j+1]=L->a[j];/*向后移动数据*/ L->a[i-1]=x; return 1; } int Del(list L,int i){/*删除*/ int j; if(i<1||i>L->n+1){ cout<<"无此插入位置!"; return 0; } for(j=i;j<=L->n;j++) L->a[j-1]=L->a[j];/*前移数据*/ L->n--; return 1;/*修正尾元下标,成功*/ } int Location(list L,datatype x){/*查找*/ int i; for(i=0;i<=L->n;i++) if(L->a[i]==x)return i+1;/*成功,返回序号*/ return 0;/*失败,返回约定值*/ } int Length(list L){//求表长 int i,j=0; if(!L->n)return 0; for(i=-1;in;i++)if(L->a[i])j++; return j; } datatype Get(list L,int i){//取元素 int j;datatype k; while(L->n>-1&&jn;j++)k=L->a[i-1]; return k; } void Replace(list L,int i,datatype x){//替换 int j; while(L->a&&jn;j++)L->a[i-1]=x; } void Clear(list L){//清空 if(!L->n){cout<<"表空!";return;} else L->n=-1; } void main(){/*测试*/ list L=Init(); cout<<"L="; Out(L); cout<<"\n\n用插入生成顺序表:(1,5,3)"; if(!Ins(L,1,5)||!Ins(L,1,1)||!Ins(L,3,3))return; cout<<"\nL="; Out(L); cout<<"\n表长="< 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf PAGE 1
本文档为【数据结构顺序表】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_662397
暂无简介~
格式:doc
大小:46KB
软件:Word
页数:4
分类:互联网
上传时间:2013-04-01
浏览量:66