2019独角兽企业重金招聘Python工程师标准>>>
二分查找算法;其输入是一个有序的元素列表,如果要查找的元素包含在列表中,二分查找返回其位置,否则返回null。
fg:猜测在1-100中的一个数字。
傻找:一个一个的排查,最多需要N次。
二分查找:每次排除一半的数据。第一次猜50,比大小后,再猜中间的数字以此类推成对数关系。最多需要log2n次。log以(2)为底(2的n次方)的对数化简为log2(100)=10。
(大O表示法:讨论运行时间时log指的都是log2。)
简单查找,在最糟糕的情况要N次,二次查找在最糟糕情况logn次。