折半查找的迭代实现

xiaoxiao2021-02-28  106

/** * 2017年4月19日18:01:27 * ------------------------------------------------------ * 本程序的问题描述: * 折半查找算法的非递归实现 * ------------------------------------------------------ * 本程序的主要思路是: * data[]原始数据,x 待查找的值,low 查找范围的起始,查找范围的终止 * ------------------------------------------------------ */ int BiSearch(int data[], const int x, int low, int high) { int mid;//中间位置 if (low > high) { return -1; } while(low <= high) { mid = (low + high) / 2; if (x == data[mid] ) { return mid; } else if (data[mid] < x) { low = mid + 1; } else if (data[mid] > x) { high = mid - 1; } } return -1; }
转载请注明原文地址: https://www.6miu.com/read-60485.html

最新回复(0)