
二分查找(binary search)
文章平均质量分 75
beiyetengqing
http://blog.youkuaiyun.com/beiyeqingteng 的镜像站
展开
-
一个数组的值先从小到大递增后从大到小递减,找出最大的值
问题: 给定一个数组,其值先从小到大递增后从大到小递减,找出最大的值。 思路:最简单的办法就是从第二个值开始,判断是否满足 A[i] > A[i-1] && A[i] > A[i+1]. 如果满足,i 就是那个最大值的下标。该算法复杂度为O(n). 我们可以改进这种算法,因为这个数组是排好序的,所以我们可以利用二分查找的思想,更快速的找到最大值,时间复杂度为O(lg原创 2012-10-05 07:42:00 · 1915 阅读 · 0 评论 -
二分查找算法(Binary Search)的实现
用二分查找在已排序的数组中查看该数组是否含有一个特定的值是非常快速的,时间复杂度为O(lgn). 二分查找思想很简单,但是实现的时候会在边界条件上出现一些意想不到的问题。 现贴出自己写的程序,供大家参考。 第一个实现是基于迭代方式: /// /// implement Binary Search algorithm through iteration approach. ///原创 2012-09-01 22:48:38 · 1099 阅读 · 0 评论