软件学院Р数据结构课程设计报告Р设计题目: 折半搜索Р学号Р姓名Р年级Р专业软件工程Р班级Р学期Р日期: 年月日Р设计报告内容大纲:Р需求描述:Рa. 结合课程学习内容和自己理解设计功能,准确演示算法思想。支持演示中间过程。能单步演示。Рb. 软件要易用。Рc. 软件可以对输入用例案例重复演示。Рd. 输入的用例数据可编辑。Рe. 软件要健壮,对非法的输入能给出合适的提示,不能直接导致软件崩溃。Р实现思想:Р折半查找的算法思想是将数列按有序化(递增或递减)排列,查找过程中采用跳跃式方式查找,即先以有序数列的中点位置为比较对象,如果要找的元素值小于该中点元素,则将待查序列缩小为左半部分,否则为右半部分。通过一次比较,将查找区间缩小一半。折半查找是一种高效的查找方法。它可以明显减少比较次数,提高查找效率。但是,折半查找的先决条件是查找表中的数据元素必须有序。Р 数据结构设计:Р 1. 首先确定整个查找区间的中间位置 mid = ( left + right )/ 2 Р 2. 用待查关键字值与中间位置的关键字值进行比较,若相等,则查找成功,若大于,则在后(右)半个区域继续进行折半查找,若小于,则在前(左)半个区域继续进行折半查找Р 3. 对确定的缩小区域再按折半公式,重复上述步骤。最后,得到结果:要么查找成功, 要么查找失败。Р 折半查找的存储结构采用一维数组存放。Р功能设计:Р单步执行,可显示算法实现全过程。Р随机生成数组。Р可选数组元素个数。Р可重复执行Р运行环境说明:РjavaР系统测试用例Р收获及体会Р通过这次的程序设计增强了我的动手能力,修改程序中错误的能力。让我深刻的感受到做一个程序首先要满足客户的要求,程序要简便,易操作,要完全考录到别人应用的感受。