📄 bisearch.cpp
字号:
#include <iostream.h>
#include "datatype.h"
int BiSeach(datatype a[], int n, keytype key)
//在有序表a[0]--a[n-1]中二分查找关键码为key的对象
//查找成功时返回该对象的下标序号;失败时返回-1
{
int low = 0, high = n - 1, mid;
while(low <= high)
{
mid = (low + high)/2;
if(a[mid].key == key) return mid;
else if(a[mid].key < key) low = mid + 1;
else high = mid - 1;
}
return -1;
}
void main(void)
{
datatype Test[] = {2,3,5,7,9,11,13,15,17,20};
int n = 10, key = 11, i;
if((i = BiSeach(Test, n, key)) != -1)
cout << "查找成功! 该对象为第" << i << "个对象";
else cout << "查找失败! 该对象在对象集合中不存在";
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -