algo0902.cpp
来自「严蔚敏的数据结构(C语言)源码」· C++ 代码 · 共 15 行
CPP
15 行
int Search_Bin ( SSTable ST, KeyType key ) { // 算法9.2
// 在有序表ST中折半查找其关键字等于key的数据元素。
// 若找到,则函数值为该元素在表中的位置,否则为0。
int low, high, mid;
low = 1; high = ST.length; // 置区间初值
while (low <= high) {
mid = (low + high) / 2;
if (EQ(key , ST.elem[mid].key)) return mid; // 找到待查元素
else if (LT(key, ST.elem[mid].key)) high = mid - 1;
// 继续在前半区间进行查找
else low = mid + 1; // 继续在后半区间进行查找
}
return 0; // 顺序表中不存在待查元素
} // Search_Bin
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?