在博客园尝试写一个博客
用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;
}
用到的知识有:迭代器,容器,二分查找思想,注意二分查找必须是针对排序的。此例中情况适合从小到大排列的数组。
浙公网安备 33010602011771号