c++算法:二分

打印 上一主题 下一主题

主题 905|帖子 905|积分 2715

算法中,有一种比线性查找算力费得更少的一种算法思想,叫“分治”,今天讲的是分治里的二分查找:
借助 (low+high)/2公式,找到搜索区域内的中间元素。图 1 中,搜索区域内中间元素的位置是 ⌊(1+10)/2⌋=5,因此中间元素是 27,此元素显然不是要找的目标元素。然后就是缩小范围。

 下面就是一个二分查找的c++程序:
[code] 1 #include 2 #include 3 using namespace std; 4 int a[500005]; 5 int n; 6 bool sreach(int key) 7 { 8     int mid,left=1,right=n; 9     while(left
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

北冰洋以北

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表