数据结构实验报告姓名学号专业班级指导教师实验时间5月12到16号实验地点图书馆四楼机房 1. 实验目标 (1)熟练掌握线性表的链式存储结构。 (2)熟练掌握单链表的有关算法设计。 (3)根据具体问题的需要,设计出合理的表示数据的顺序结构,并设计相关算法。 2. 实验内容和要求 (1)本次实验中的链表结构指带头结点的单链表; (2)单链表结构和运算定义,例如求链表长度,在第i个结点前插入值为x的结点; (3)实验程序有较好可读性,各运算和变量的命名直观易懂,符合软件工程要求; (4)程序有适当的注释。 3. 数据结构设计(给出单链表的数据结构) typedefstruct//结点结构{elementtypedata;//存放数据的字段structnode*next;//指向后继结点的指针}node;4. 算法设计 (给出具体设计的函数代码) (1)初始化链表运算的实现算法如下:voidinitial_list(node*&L){L=newnode;//产生头结点L->next=NULL;//设置后继指针为空}(2)求链表长度运算的实现算法如下:intlist_length(node*L){intn=0;node*P=L->next;while(P!=NULL){n++;//存在元素结点时就计数P=P->next;//继续后继结点的计数}Returnn;//返回结果}(3)插入算法的实现在链表L的第i个元素结点前插入值为x的结点算法如下:voidlist_insert(node*L,inti,elementtypex){node*P=L;intk=0;node*S;while(k!=i–1&&P!=NULL)//搜索ai-1结点{P=P->next;p++;}if(P==NULL)error(“序号错“);//等价于判断插入序号是否正确else{S=newnode
数据结构实验报告-链表 来自淘豆网m.daumloan.com转载请标明出处.