美文网首页
学习日记-02-关于 二分查找

学习日记-02-关于 二分查找

作者: Adora_cdac | 来源:发表于2018-10-28 21:20 被阅读0次

    对象:有序的元素列表(list)

    目标:一个元素(target)

    时间复杂度:O(logN) log以2为底

    思路:设置一个循环,在每一次循环中都比较target和guess值的大小,其中guess值是整个有序数列的中值(mid index),若guess值小了就将元素列表缩小到后半段(mid+1,len(list)-1),若guess值大了就将列表缩小到前半段(0,mid-1),若guess等于target则返回index的值

    循环结构有 for循环和while循环。

    一般while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。而for循环可以遍历任何序列的项目。在这个二分查找的小任务里,比较guess值和缩小范围在每一次循环中都是相同的,因此while循环更适合这里。

    while循环的逻辑:当判断条件为true,执行语句,直到条件不满足,跳出。

    二分查找直到范围缩小到只剩一个值的时候,停止。此时index_low = index_high

    代码如下:

    相关文章

      网友评论

          本文标题:学习日记-02-关于 二分查找

          本文链接:https://www.haomeiwen.com/subject/mzkmtqtx.html