《实验一---数据结构顺序表的插入和删除(共2页).doc》由会员分享,可在线阅读,更多相关《实验一---数据结构顺序表的插入和删除(共2页).doc(2页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上实验一 顺序表的操作1. 实验题目:顺序表的操作2.实验目的和要求: 1)了解顺序表的基本概念、顺序表结构的定义及在顺序表上的基本操作(插入、删除、查找以及线性表合并)。 2) 通过在Turbo C(WinTc,或visual stdio6)实现以上操作的C语言代码。 3)提前了解实验相关的知识(尤其是C语言)。3.实验内容:(二选一)1) 顺序表的插入算法,删除算法,顺序表的合并算法2) 与线性表应用相关的实例(自己选择具体实例) 4.部分参考实验代码: 顺序表结构的定义: #include #define MAXLEN 255typedef int ElemTyp
2、e;typedef struct ElemType elemMAXLEN; int length; sqList; 顺序表前插(在第i号元素前插入一个新的元素) int ListInsert(sqList *la,int i,int x) int j; if(ila- length +1) printf(“n the value of i is wrong!”); return 0; if(la- length +1=MAXLEN) printf(“n overflow!”); return 0;. for(j=la- length;j=i;j-) la-listj+1=la-listj; l
3、a-listi=x; la- length +; return 1; 顺序表删除 int ListDelete(sqList *la,int i) if(ila- length) printf(“n the position is wrong!n”); return 0; for(i;i length;i+) la-listi-1=la-listi; la- length -; return 1; 5.附录:实验预备知识: 复习C语言中数组的用法。 了解线性表和顺序表的概念,顺序表的定义方法; 线性表是n个数据元素的有限序列,至于每个数据元素的具体含义,在不同的情况下各不相同。 顺序表是线性表
4、的顺序存储表示,是用一组地址连续的存储单元依次存储线性表的数据元素。 在C语言中,顺序表是用数组来实现的。 掌握线性表在顺序存储结构上实现基本操作:查找、插入、删除和合并的算法。 在实现这些算法的时候,要注意判断输入数据的合法性,除此之外还要要注意以下内容: 在实现查找的时候,首先要判断该顺序表是否为空,其次要判断查找后的结果(查到时输出查到的数据,未查到时给出未查到提示)。 在实现插入的时候,首先要判断该顺序表是否为满,如为满则报错(此时要注意:顺序表是用数组来实现的,它不能随机分配空间);如不为满,则需判断要插入的位置是否合法(例如:如果一个线性表的元素只有10个,而要在第0个元素前插入或在第11个元素后插入就为不合法)。其次要注意是前插还是后插,两者是有区别的;最后还要注意插入时各个数据元素移动的次序是从后面依次开始移动。 在实现删除的时候,首先要判断该顺序表是否为空,如为空则报错,如不为空,则需判断要删除的位置是否合法(例如:如果一个线性表的元素只有10个,而要删除第0个或第十一个元素就为不合法)。其次还要注意删除时各个数据元素移动的次序是从前面依次开始移动。 专心-专注-专业