2014算法设计与分析的实验报告.docVIP

  • 58
  • 0
  • 约7.12千字
  • 约 14页
  • 2016-12-14 发布于北京
  • 举报
实验一 递归与分治策略 一、实验目的 1.加深学生对分治法算法设计方法的基本思想、基本步骤、基本方法的理解与掌握; 2.提高学生利用课堂所学知识解决实际问题的能力; 3.提高学生综合应用所学知识解决实际问题的能力。 二、实验内容 1、 ①设a[0:n-1]是已排好序的数组。请写二分搜索算法,使得当搜索元素x不在数组中时,返回小于x的最大元素位置i和大于x的最小元素位置j。当搜索元素在数组中时,i和j相同,均为x在数组中的位置。 ②写出三分搜索法的程序。 三、实验要求 (1)用分治法求解上面两个问题; (2)再选择自己熟悉的其它方法求解本问题; (3)上机实现所设计的所有算法; 四、实验过程设计(算法设计过程) 1、已知a[0:n-1]是一个已排好序的数组,可以采用折半查找(二分查找)算法。如果搜索元素在数组中,则直接返回下表即可;否则比较搜索元素x与通过二分查找所得最终元素的大小,注意边界条件,从而计算出小于x的最大元素的位置i和大于x的最小元素位置j。 2、将n个元素分成大致相同的三部分,取在数组a的左三分之一部分中继续搜索x。如果xa[2(n-1)/3],则只需在数组a的右三分之一部分中继续搜索x。上述两种情况不成立时,则在数组中间的三分之一部分中继续搜索x。 五、实验结果分析 二分搜索法: 三分搜索法: 时间复杂性: 二分搜索每次把搜索区域砍掉一半,

文档评论(0)

1亿VIP精品文档

相关文档