欢迎来到天天文库
浏览记录
ID:14010375
大小:134.00 KB
页数:15页
时间:2018-07-25
《数据结构域算法设计-实验05 线性表的链式表示和实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、浙江大学城市学院实验报告课程名称数据结构基础实验项目名称实验五线性表的链式表示和实现学生姓名专业班级学号实验成绩指导老师(签名)日期一.实验目的和要求1、掌握线性表的链式存储结构;2、掌握单链表、循环单链表的一些基本操作实现函数。二.实验内容1、设线性表采用带表头附加结点的单链表存储结构,请编写线性表各基本操作的实现函数,把它们存放在头文件LinkList.h中,同时建立一个验证操作实现的主函数文件test2_2.cpp。编译并调试程序,直到正确运行。2、选做:编写一个函数voidMergeList(LNode*&La,LNode*&Lb,LNode*&Lc),实现将两个
2、带表头附加结点的有序单链表La和Lb合并成一个新的带表头附加结点的有序单链表Lc的功能,要求利用原存储空间。请把该函数添加到头文件LinkList.h中,并在主文件test2_2.cpp中添加相应语句进行测试。3、填写实验报告,实验报告文件取名为report5.doc。4、上传实验报告文件report5.doc、源程序文件test2_2.cpp及LinkList.h到Ftp服务器上自己的文件夹下。三.函数的功能说明及算法思路/*初始化单链表*/voidInitList(LNode*&H)/*删除单链表中的所有结点,使之成为一个空表*/voidClearList(LNode
3、*&H)/*得到单链表的长度*/intLengthList(LNode*H)/*检查单链表是否为空*/boolEmptyList(LNode*H)/*得到单链表中第pos个结点中的元素*/ElemTypeGetList(LNode*H,intpos)/*遍历一个单链表*/voidTraverseList(LNode*H)/*从单链表中查找等于定值的第1个元素*/ElemTypeFindList(LNode*&H,ElemType&item)/*向单链表中按给定条件插入一个元素*/boolInsertList(LNode*&H,ElemTypeitem,intpos)/*更
4、新单链表中等于定值的第1个元素*/boolUpdateList(LNode*&H,constElemType&item,intpos)/*从单链表中删除符合给定条件的第1个元素*/boolDeleteList(LNode*&H,ElemTypeitem,intpos)/*对单链表进行数据排序*/voidSortList(LNode*&H)/*合并两个单链表*/voidMergeList(LNode*&A,LNode*&B)四.实验结果与分析五.心得体会【附录----源程序】test2_2.cpp#include#include#inc
5、ludetypedefintElemType;#include"LinkList.hvoidmain(){intchoice,select,i;ElemTypex;LNode*A;ElemTypea[10]={27,13,14,7,55,29,21,67,33,36};InitList(A);for(i=0;i<10;i++)InsertList(A,a[i],i+1);do{system("cls");cout<<"*****************************************************"<6、<"*1.插入元素*"<>choice;switch(choice){case1:do{system("cls");7、cout<<"*********************************"<>select;system("cls");if(select==1){cout<<"线性表A:";TraverseList(A);cout<<"输
6、<"*1.插入元素*"<>choice;switch(choice){case1:do{system("cls");
7、cout<<"*********************************"<>select;system("cls");if(select==1){cout<<"线性表A:";TraverseList(A);cout<<"输
此文档下载收益归作者所有