资源描述:
《大数据结构(C语言版)实验报告材料》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实用文档数据结构(C语言版)实验报告专业:计算机科学与技术、软件工程学号:____201240703061___________________班级:_________软件二班______________姓名:________朱海霞______________指导教师:___刘遵仁________________青岛大学信息工程学院2013年10月文案大全实用文档实验1实验题目:顺序存储结构线性表的插入和删除实验目的:了解和掌握线性表的逻辑结构和顺序存储结构,掌握线性表的基本算法及相关的时间性能分析。实验要求:建立一个数据域定义为整数类
2、型的线性表,在表中允许有重复的数据;根据输入的数据,先找到相应的存储单元,后删除之。实验主要步骤:1、分析、理解给出的示例程序。2、调试程序,并设计输入一组数据(3,-5,6,8,2,-5,4,7,-9),测试程序的如下功能:根据输入的数据,找到相应的存储单元并删除,显示表中所有的数据。程序代码:#include#include#defineOK1#defineERROR0#defineOVERFLOW-2#defineLIST_INIT_SIZE100#defineLISTINCREMENT10t
3、ypedefstruct{int*elem;intlength;intlistsize;}Sqlist;intInitList_Sq(Sqlist&L){L.elem=(int*)malloc(LIST_INIT_SIZE*sizeof(int));if(!L.elem)return-1;L.length=0;L.listsize=LIST_INIT_SIZE;returnOK;}intListInsert_Sq(Sqlist&L,inti,inte){if(i<1
4、
5、i>L.length+1)returnERROR;if(L.leng
6、th==L.listsize){文案大全实用文档int*newbase;newbase=(int*)realloc(L.elem,(L.listsize+LISTINCREMENT)*sizeof(int));if(!newbase)return-1;L.elem=newbase;L.listsize+=LISTINCREMENT;}int*p,*q;q=&(L.elem[i-1]);for(p=&(L.elem[L.length-1]);p>=q;--p)*(p+1)=*p;*q=e;++L.length;returnOK;}intL
7、istDelete_Sq(Sqlist&L,inti,inte){int*p,*q;if(i<1
8、
9、i>L.length)returnERROR;p=&(L.elem[i-1]);e=*p;q=L.elem+L.length-1;for(++p;p<=q;++p)*(p-1)=*p;--L.length;returnOK;}intmain(){SqlistL;InitList_Sq(L);//初始化inti,a[]={3,-5,6,8,2,-5,4,7,-9};for(i=1;i<10;i++)ListInsert_Sq(L,i,a[i
10、-1]);for(i=0;i<9;i++)printf("%d",L.elem[i]);printf("");//插入9个数ListInsert_Sq(L,3,24);for(i=0;i<10;i++)printf("%d",L.elem[i]);printf("");//插入一个数inte;ListDelete_Sq(L,2,e);for(i=0;i<9;i++)printf("%d",L.elem[i]);//删除一个数printf("");return0;文案大全实用文档}实验结果:3,-5,6,8,2,-5,4,7,
11、-93,-5,24,6,8,2,-5,4,7,-93,24,6,8,2,-5,4,7,-9心得体会:顺序存储结构是一种随机存取结构,存取任何元素的时间是一个常数,速度快;结构简单,逻辑上相邻的元素在物理上也相邻;不使用指针,节省存储空间;但是插入和删除元素需要移动大量元素,消耗大量时间;需要一个连续的存储空间;插入元素可能发生溢出;自由区中的存储空间不能被其他数据共享实验2实验题目:单链表的插入和删除实验目的:了解和掌握线性表的逻辑结构和链式存储结构,掌握单链表的基本算法及相关的时间性能分析。实验要求:建立一个数据域定义为字符类型的单链
12、表,在链表中不允许有重复的字符;根据输入的字符,先找到相应的结点,后删除之。实验主要步骤:1、分析、理解给出的示例程序。2、调试程序,并设计输入数据(如:A,C,E,F,H,J,Q,M),测试程序的如下功能