首页 > 代码库 > 二分查找

二分查找

记得在大一的时候,一个外教老师跟我们玩一个猜数字的游戏。他说他想一个数字,1~100。
然后让我们猜。聪明的一看就知道是二分查找。当时我虽然看过了《编程珠玑》,但是,我並
没有把程序的思想运用到实际生活中。他只是让我们猜,乱猜的什么都有。毕竟太嫩了。直到
老师提示我才猛地意识到他想讲的是二分查找。


二分查找的 mid 写法

int mid = low + (high - low) / 2;

不能写

int mid = (low + high) / 2;

因为 low+high 可能超过最大限制值,保险的做法是第一种。


二分查找还可以干嘛?
程序中有 bug,例如 100 行代码。我们也可以同样可以用二分查找。

二分查找