Java简单的折半查找法(二分查询)
什么是折半查找法?
折半查找法是效率较高的一种查找方法。假设有已经按照从小到大的顺序排列好的五个整数a0~a4,要查找的数是X,其基本思想是:设查找数据的范围下限为l=1,上限为h=5,求中点m=(l+h)/2,用X与中点元素am比较,若X等于am,即找到,停止查找;否则,若X大于am,替换下限l=m+1,到下半段继续查找;若X小于am,换上限h=m-1,到上半段继续查找;如此重复前面的过程直到找到或者l>h为止。如果l>h,说明没有此数,打印找不到信息,程序结束。
Java如何实现折半查找:
用一个例子来了解:系统生成20个由小到大的随机数(0-100之间,包括100)、用户键入需要查找的数字,用二分查找输出找到的数的下标,否则输出未查询到。
定义一个20个数的数组产生随机数后排序输出、代码如下:
int[] buf=new int[20];
for(int i=0;i<20;i++)