算法第二章上机实践报告
实验一实践报告
计科2001 刘千愉 20201003146
一、 问题描述
在单峰数组中找出最大值
二、 算法描述
单峰函数的最大值一定大于它前面的一个数,也大于它后面的一个数
用二分法找出每个子问题最大的值,再进行递归,与其他结果进行比较,最后返回峰值
三、 算法时间与空间复杂度分析
递归算法:O(n)=nlogn
空间复杂度:
四、 心得体会
要考虑全面,单调递增与单调递减的情况,再次查找的位置不一样。搞清楚mid的位置才不会出错。
五、 对分治法的体会与思考
在有序且规模较大的问题中,分治法使问题简化,效率提高,但要充分理解其算法原理,在递归时重新设置查找范围才不容易出错。