代码改变世界

查找算法总结

2019-03-26 11:49  mengjuanjuan1994  阅读(151)  评论(0编辑  收藏  举报

1. 顺序查找,时间复杂度O(N)

2. 当序列有序时,采用二分查找,思想为先找中间那个数,如果等于,即找到;如果小于中间的数,即从前半部分查找;如果大于中间的数,即从后半部分查找

3. 有一个数组,从左到右是从小到大,从上到下是从小到大,

例如:

1   3   5    9

2   6   12  20

5   7   18  32

8   9   20  40

 找数组中是否存在6这个数

 

方法:从右上角那个数开始找,本题,从9开始找,若大于9,则把第一行删除,下一次从20开始找;否则把最后一列删除,下一次从5开始找。时间复杂度为O(n)