《数据结构实验报告七-顺序查找.docx》由会员分享,可在线阅读,更多相关《数据结构实验报告七-顺序查找.docx(4页珍藏版)》请在优知文库上搜索。
1、实验七顺序查找一、实验目的1.掌握顺序查找操作的算法实现。二、实验平台操作系统:Windows7或WindowsXP开发环境:JAVA三、实验内容及要求1 .建立顺序查找表,并在此查找表上实现顺序查找操作。四、实验的软硬件环境要求硬件环境要求:PC机(单机)使用的软件名称、版本号以及模块:Netbeans6.5以上或Eclipse、MyEclipse等编程环境下。五、知识准备前期要求掌握查找的含义和顺序查找操作的方法。六、验证性实验2 .实验要求编程实现如下功能:(1)根据输入的查找表的表长n和n个关键字值,建立顺序查找表,并在此查找表中用顺序查找方法查找给定关键值的记录,最后输出查找结果。3
2、 .实验相关原理:查找表分别静态查找表和动态查找表两种,其中只能做引用操作的查找表称为静态查找表。静态查找表采用顺序存储结构,待查找的记录类可描述如下:publicclassRecordNodeprivateComparablekey;关键字privateObjectelement;数据元素待排序的顺序表类描述如下:publicclassSeqListprivateRecordNoder;顺序表记录结点数组privateintcurlen;顺序表长度,即记录个数顺序表的构造方法,构造一个存储空间容量为RiaxSize的顺序表publicSeqList(intmaxSize)this,r=new
3、RecordNodemaxSize:/为顺序表分配maxSize个存储单元this.curlen=O;/置顺序表的当前长度为O)【核心算法提示】查找操作是根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素或记录的过程。假设查找表中存在这样一个记录,那么称“查找成功”。查找结果给出整个记录的信息,或指示该记录在查找表中的位置;假设在查找表中不存在这样的记录,那么称“查找不成功”。查找结果给出“空记录”或“空指针”。(1)顺序查找操作的根本步骤:从表中第一条记录开始,顺序扫描查找表,依次将扫描到的结点关键字值与给定值key进行比拟,假设当前扫描到的结点关键字值与key相等,那么查找成
4、功,返回记录下标;假设扫描到最后一条记录,仍未找到关键字值等于key的记录,那么查找失败,返回-1。4 .核心算法描述假设查找表中从rl到rn存放n条元素,第O号存储单元不存储数据元素。(1)在顺序查找表上的顺序查找算法publicintseqSearch(Compablekey)inti=1,n=length();while(in+1&ri.getKey()pareTo(key)!=0)i+;if(in+l)(查找成功那么返回该元素的下标i,否那么返回-1returni;else(return-1;【实验报告】数据结构与算法实验报告七学院:工学部班级:13管信Al学号:20134843520
5、姓名:赵中立日期:2015/11/23程序名:顺序查找一、上机实验的问题和要求:1 .实验要求编程实现如下功能:(1)根据输入的查找表的表长n和n个关键字值,建立顺序查找表,并在此查找表中用顺序查找方法查找给定关键值的记录,最后输出查找结果。二、源程序及注释:/*顺序查找,a为数组,n为要查找的数组元素个数,key为要查找的关键字*/publicintseqSearch(int*a,itn,Comparablekey)inti=1,n=length()j.while(in+1&ri.getKey()pareTo(key)!=0)i+;if(in+1)查找成功那么返回该兀素的卜标i,否那么返回Treturni;elsereturn-1;三、运行输出结果:四、调试和运行程序过程中产生的问题及采取的措施: