《数据结构》实验教案.doc

《数据结构》实验教案.doc

ID:61005495

大小:932.50 KB

页数:30页

时间:2021-01-19

《数据结构》实验教案.doc_第1页
《数据结构》实验教案.doc_第2页
《数据结构》实验教案.doc_第3页
《数据结构》实验教案.doc_第4页
《数据结构》实验教案.doc_第5页
资源描述:

《《数据结构》实验教案.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、教案2011~2012学年第1学期《数据结构》实验教案教学院(部)计算机学院教研室基础教研室 授课班级10应用、网络、信管专授课教师职称职务讲师教材名称《数据结构》朱站立编著2011年8月30日实验安排表周次日期实验课题学时实验报告次数49.19-9.23实验一线性表(一)2059.26-9.30实验一线性表(二)20710.10-10.14实验一线性表(三)21810.17-10.21实验二栈、队列的实现及应用21910.24-10.28实验三串及数组的实验211411.28-12.2实验四二叉树的基本操作211512.5-12.9实验五查找和排序(一)201612.12-12.16

2、实验五查找和排序(一)21检查日期检查人一式三份:一份交教务处,一份存教学系部,一份由本人保存.实验一线性表(一)一、实验目的及要求1、掌握在TC环境下调试顺序表的基本方法2、掌握顺序表的基本操作,插入、删除、查找、以及有序顺序表的合并等算法的实现。二、实验学时2学时三、实验任务1、生成一个顺序表并动态地删除任意元素和在任意位置插入元素。2、将两个有序表合并成一个有序表。四、实验重点、难点1、在顺序表中移动元素。2、在顺序表中找到正确的插入位置。五、操作要点(一)顺序表基本操作的实现[问题描述]当我们要在顺序表的第i个位置上插入一个元素时,必须先将顺序表中第i个元素之后的所有元素依次后

3、移一个位置,以便腾空一个位置,再把新元素插入到该位置。若是欲删除第i个元素时,也必须把第i个元素之后的所有元素前移一个位置。[基本要求]要求生成顺序表时,可以键盘上读取元素,用顺序存储结构实现存储。[实现提示]要实现基本操作,可用实现的基本操作,也可设计简单的算法实现。[程序实现]#include#includetypedefintDataType;#definemaxnum20typedefstruct{intdata[maxnum];intlength;}SeqList;/*插入函数*/intinsert(SeqList*L,inti,DataT

4、ypex)/*将新结点x插入到顺序表L第i个位置*/{intj;if(i<0

5、

6、i>(*L).length+1){printf("i值不合法!");return0;}if((*L).length>=maxnum-1){printf("表满不能插入!");return0;}for(j=(*L).length;j>=i;j--)(*L).data[j+1]=(*L).data[j];(*L).data[i]=x;(*L).length++;return1;}/*删除函数*/intdelete(SeqList*L,inti)/*从顺序L中删除第i个结点*/{intj;if(i<0

7、

8、

9、i>(*L).length){printf("删除位置错误!");return0;}for(j=i+1;j<=(*L).length;j++)(*L).data[j-1]=(*L).data[j];(*L).length--;return1;}/*生成顺序表*/voidcreatlist(SeqList*L){intn,i,j;printf("请输入顺序表L的数据个数:");scanf("%d",&n);for(i=0;i

10、tf("");}/*creatlist*//*输出顺序表L*/printout(SeqList*L){inti;for(i=0;i<=(*L).length;i++){printf("data[%d]=",i);printf("%d",(*L).data[i]);}/*printout*/printf("");}main(){SeqList*L;charcmd;inti,t,x;clrscr();creatlist(L);do{printf("i,I-----插入");printf("d,D-----删除");printf("q,Q-----退出");do{cm

11、d=getchar();}while((cmd!='i')&&(cmd!='I')&&(cmd!='d')&&(cmd!='D')&&(cmd!='q')&&(cmd!='Q'));switch(cmd){case'i':case'I':printf("PleaseinputtheDATA:");scanf("%d",&x);printf("Where?");scanf("%d",&i);insert(L,i,x);printout(L

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。