二分查找,你真的会吗?
2013-04-09 22:07
253 查看
文章来源:勇幸|Thinking (http://www.ahathinking.com) 转载请注明,谢谢合作。
---
面试常让写二分查找或其扩展的程序,以前总觉得很简单,但是真动手写起来,细节很多,容易出错的地方也很多,真是秒杀眼高手低的利器,本节就二分查找以及相关扩展程序都实现一下,同时将可能出错的地方以及需要注意的细节也一并说明,水平有限,欢迎补充。
内容如下:
1)二分查找元素key的下标,如无 return -1
2)二分查找返回key(可能有重复)第一次出现的下标,如无return -1
3)二分查找返回key(可能有重复)最后一次出现的下标,如无return -1
4)二分查找返回刚好小于key的元素下标,如无return -1
5)二分查找返回刚好大于key的元素下标,如无return -1
注:以上所有问题可能出错的地方以及需要注意的细节说明在代码注释中。
直接上代码:
测试程序,输入测试用例个数testcase,程序随机生成testcase个数组,并随机生成key,对以上函数进行测试。代码如下:
一次运行结果如图:
---
面试常让写二分查找或其扩展的程序,以前总觉得很简单,但是真动手写起来,细节很多,容易出错的地方也很多,真是秒杀眼高手低的利器,本节就二分查找以及相关扩展程序都实现一下,同时将可能出错的地方以及需要注意的细节也一并说明,水平有限,欢迎补充。
内容如下:
1)二分查找元素key的下标,如无 return -1
2)二分查找返回key(可能有重复)第一次出现的下标,如无return -1
3)二分查找返回key(可能有重复)最后一次出现的下标,如无return -1
4)二分查找返回刚好小于key的元素下标,如无return -1
5)二分查找返回刚好大于key的元素下标,如无return -1
注:以上所有问题可能出错的地方以及需要注意的细节说明在代码注释中。
直接上代码:
相关文章推荐
- hdu 5249 KPI 【二分查找】
- 二分查找总结
- 二分查找那些事儿(2)
- 二分查找
- 二分查找
- 贪心/二分查找 BestCoder Round #43 1002 pog loves szh II
- poj35798(组合中位数二分查找)
- 【CF676C】Vasya and String(二分查找,线性扫描尺取法)
- 【二分查找+优化O(n)】【续UVA1121】Subsequence
- leetcode 275. H-Index II-h因子|二分查找
- 二分查找的实现及注意事项
- 二分查找
- 你真的会二分查找吗?
- java的Collections中二分查找源码分析
- 二分查找
- UVA10474 Where is the Marble?(二分查找,STL-lower_bound)
- 数据结构实验之查找四:二分查找
- leetcode 209. Minimum Size Subarray Sum-子序列最小长度|双指针|二分查找
- 二分查找
- 【二分查找算法】