数据查找,二分法,两种情况

img

如果要查找的数据不止一个或者查找的数据在数组中有多个怎么办?

咱先把问题简单化:

  • 二分查找一个数据的函数能不能封一个出来?
  • 多个数据,那就 遍历每个数据,然后调 第一步的 二分查找一个数据的函数,不就搞定了嘛?

用二分法找到第一个值,然后分别向左向右逐个找相同的值,不相同则搜索结束。因为已经排好序了,相同的值一定和第一个搜索的值相邻

你都写了二分函数了,一个一个查呗。