在博客园尝试写一个博客

 

用C++的vector写一个二分查找:

bool BiSearch(int key,vector<int> ve) {
  vector<int>::iterator be = ve.begin(),en=ve.end(),mid;
  while (be<en)
  {
     mid = be + (en - be) / 2;
    if (*mid==key)
    {
      return true;
    }
    if (*mid>key)
    {
      en = mid - 1;
    }else{
      be = mid + 1;
    }
  }
  return false;
}

用到的知识有:迭代器,容器,二分查找思想,注意二分查找必须是针对排序的。此例中情况适合从小到大排列的数组。

posted on 2021-03-15 21:27  长立足,尽桐影  阅读(17)  评论(0)    收藏  举报