#插句题外话,之前好久不用c语言了,有些问题以为很简单,可是东西还是要上手才是好的。
正文:
二分查找,通俗意思在一个线性表里面找中间的量,比中间值大了去右边找,比中间值小了去左边找,前提数组要有序,这里就举升序的例子,首先初始化一个left 和一个right变量代表数组最左边和最右边的下标,然后mid就是两者相加除以二,就得用while来保证数组不会越界那就是left要永远小于right。
大于中间值,说明要找的数在右边,此时缩小数组范围,最左边的数就给他置成mid+1那个地址指向的数,mid值也要跟着更新
小于中间值,要找的数就在左边,此时缩小数组范围,最右边的数就给他置成mid-1那个地址指向的数,mid值也要跟着更新。
找到了,打印下标,break跳出循环;