浏览 4595 次
锁定老帖子 主题:折半搜索
精华帖 (0) :: 良好帖 (0) :: 新手帖 (4) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-03-28
int search(int *a, int size, int t) { int low, high, mid; low = 0; high = size - 1; while(low <= high){ mid = (low + high) / 2; if(t == a[mid]){ return mid; } if(a[mid] > t){ high = mid - 1; }else{ low = mid + 1; } } return -1; } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-03-30
没找到就挂了
|
|
返回顶楼 | |
发表时间:2010-03-30
fffvvvzz 写道 没找到就挂了
能够具体给出一个例子吗`? 我这里调试了一下,, 没发现什么异常` |
|
返回顶楼 | |
发表时间:2010-03-31
11-15
|
|
返回顶楼 | |
发表时间:2010-03-31
fffvvvzz 写道 11-15
是 11 12 13 14 15 这五个? 我这里都可以啊` |
|
返回顶楼 | |
发表时间:2010-04-12
问下楼主:你是拿了别人的注册号在这里害别人,还是没事在这里装-B啊!
|
|
返回顶楼 | |
发表时间:2010-04-14
最后修改:2010-04-14
没看代码,看描述难道是2分法?
是的话不一定是a[i-1] < a[i],有序就好阿 |
|
返回顶楼 | |
发表时间:2010-05-05
提烟而过 写道 问下楼主:你是拿了别人的注册号在这里害别人,还是没事在这里装-B啊!
不要这么伤害别人 |
|
返回顶楼 | |