目录
场景
解释
代码
场景
假设要在字典中找一个以O打头的单词,你可以从A打头的部分开始查找,但更合乎逻辑的做法是从中间开始查找,这种算法就是二分查找
解释
二分查找是一种算法,其输入是一个有序的元素列表(从小到大),如果要查找的元素包含在列表中,二分查找返回其位置;否则返回null;
下面的实列说明了二分查找的工作原理。我随便想一个1~100的数字。
你的目标是以最少的次数猜到这个数字。你每次猜测后,我会说小了,大了或对了。
使用二分查找时,每次都排除一半的数字
一般而言,对于包含N个元素的列表,用二分查找最多需要步,而简单查找最多需要n步。