数据结构实验报告2.pdf
《数据结构实验报告2.pdf》由会员分享,可在线阅读,更多相关《数据结构实验报告2.pdf(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、广东金融学院实验报告课程名称:数据结构实验编号及实验名称姓名实验地点指导教师1、实验二:排序和查找实验系别无电脑科学与技术系6学号实验日期同组其他成员班级实验时数成绩一、实验目的及要求通过编写和调用直接插入排序、 希尔排序、 冒泡排序和快速排序四种排序算法实现数据排序,充分理解各种排序算法的算法思想、排序过程及各自的时间复杂度、稳定性。2、通过编写和调用顺序查找和二分查找算法实现数据查找,掌握两个查找算法的基本思想、实现方法和时间性能。二、实验环境及相关情况包含使用软件、实验设备、主要仪器及材料等1、实验设备:微型电脑;2、软件系统:Windows XP、DWMX。三、实验内容(一) 排序装订
2、线1参照课本,分别编写Java 程序,实现顺序表记录类RecordNode、类 KeyType。2参照课本,编写一个Java 程序,实现顺序表类SeqList,并在其中添加成员函数:length()求顺序表的当前长度; display()输出数组元素的关键字;直接插入排序算法;带监视哨的直接插入排序;希尔排序算法;起泡排序算法;快速排序算法。3编写主程序,循环选择调用以上5 个排序算法,对数组元素排序,并输出排序过程。二查找1在排序实验的基础上,在类SeqList 中添加成员函数:不带监视哨的顺序查找算法;带监视哨的顺序查找算法;二分查找算法。2编写主程序,循环选择调用以上3个查找算法,分别对
3、键入的关键字记录进行成功和不成功查找publicpublic classclass KeyType implementsimplements Comparableprivateprivate intint key;publicpublic KeyType()publicpublic KeyType(intint key)thisthis.key=key;publicpublic intint getKey()returnreturn key;publicpublic voidvoid setKey(intint key)第 1 页 共 2 页thisthis.key=key;publicpub
4、lic String toString()publicpublic intint compareTo(KeyType another)intint thisVal=thisthis.key;intint anotherVal=another.key;returnreturn(thisValanotherVal? -1:(thisVal=anotherVal? 0:1);returnreturn key +;publicpublic classclass RecordNodeprivateprivate Comparable key;privateprivate Object element;p
5、ublicpublic Object getElement()publicpublic voidvoid setElement(Object element)publicpublic Comparable getKey()publicpublic voidvoid setKey(Comparable key)publicpublic RecordNode(Comparable key)publicpublic RecordNode(Comparable key,Object element)thisthis.key=key;thisthis.element=element;thisthis.k
6、ey=key;thisthis.key=key;returnreturn key;thisthis.element=element;returnreturn element;publicpublic classclass SeqListprivateprivate RecordNoder;privateprivate intint curlen;publicpublic SeqList(intint maxSize)publicpublic RecordNodegetRecord()第 2 页 共 10 页thisthis.r=newnew RecordNodemaxSize;thisthis
7、.curlen=0;returnreturn r;publicpublic voidvoid setRecord(RecordNoder)publicpublic intint length()publicpublic voidvoid display()publicpublic voidvoid insert(intint i,RecordNode x)throwsthrows Exceptionpublicpublic voidvoid insertSort()RecordNode temp;publicpublic voidvoid shellSort(intintd)/希尔Record
8、Node temp;intint i,j;forfor(intint k=0;kd.length;k+)intint dk=dk;forfor(i=dk;i=0&temp.getKey() pareTo( rj.getKey()0;j-=dk)第 3 页 共 2 页thisthis.r=r;returnreturn curlen;forfor(intint i=0;icurlen;i+)System.out .print(ri.getKey()+ );ifif(curlen=r.length)throwthrow newnew Exception(顺序表已满);ifif(icurlen)thr
9、owthrow newnew Exception(插入位置不合理);forfor (intint j=curlen;ji;j-)ri=x;thisthis.curlen+;/直接插入rj=rj-1;intint i,j;forfor(i=1;i=0&temp.getKey() pareTo( rj.getKey()0;j-)rj+1=rj;rj+1=temp;rj+dk=temp;publicpublic voidvoid insertSortWithGuard()/带监视哨的直接插入intint i,j;publicpublic voidvoid bubbleSort()/冒泡RecordN
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 实验 报告
限制150内