C ++ ::二进制搜索
描述
二进制搜索是一种广泛使用的搜索算法,该算法要求在应用搜索之前对数组进行排序。该算法背后的主要思想是将数组始终分为两半(分而治之),直到找到元素或所有元素用尽为止。
例子
#include<iostream>#include<algorithm>
void show(int a[], int arraysize) {
for (int i = 0; i < arraysize; ++i)
std::cout << a[i] << " ";
}
int main() {
int a[] = { 1, 5, 8, 9, 6, 7, 3, 4, 2, 0 };
int asize = sizeof(a) / sizeof(a[0]);
std::cout << "\n The array is : ";
show(a, asize);
/* Make sure to sort the array before applying binary_search() */
std::sort(a, a + asize);
std::cout << "\nSearch for element 10 : ";
if (binary_search(a, a + 10, 10))
std::cout << "\nElement found in the array";
else
std::cout << "\nElement not found in the array";
return 0;
}
以上是 C ++ ::二进制搜索 的全部内容, 来源链接: utcz.com/z/341488.html