二分搜索的前提为:必须为有序序列,可用快速排序法进行排序
class BinaryFind
{
/////必须是有序序列才能进行二分查找,可用快速排序进行排序
public void find(int leftIndex,int rightIndex,int val,int arr[])
{
///首先找到中间数
int midIndex=(rightIndex+leftIndex)/2;
int midVal=arr[midIndex];
if(rightIndex>=leftIndex){
///如果要找的数val比midVal大
if(midVal>val)
{
///在arr左边找,采用递归
find(leftIndex,midIndex-1,val,arr);
}
else if(midVal<val)
{
///在arr右边的数去找
find(midIndex+1,rightIndex,val,arr);
}
else if(midVal==val)
{
System.out.println("找到下标"+midIndex);
}
}
else
{
System.out.println("不能找到-->"+val);
}
}
}
分享到:
相关推荐
用java实现二分查找法BianrySearch 用java实现二分查找法BianrySearch 用java实现二分查找法BianrySearch
Java二分查找递归算法
java实现二分查找,包含时间复杂度的计算
何为二分查找 – 效果演示 编写二分查找代码 前提:有已排序数组 A(假设已经做好) 定义左边界 L、右边界 R,确定搜索范围,循环执行二分查找(3、4两步) 获取中间索引 M = Floor((L+R) /2) 中间索引的值 A[M] 与...
JAVA用递归和非递归的方法实现二分查找
本代码是利用java语言实现基本数据查询功能,实现算法为二分查找法
java二分查找开发技术实现代码,注意二分查找必须是有序数组
用java实现了二分查找,效率较高,思路清晰易懂。
用java二分查找法实现日期搜索 用java二分查找法实现日期搜索 用java二分查找法实现日期搜索
java 二分查找法的实现方法 java 二分查找法的实现方法
Java 二分查找算法的示例代码。 欢迎访问个人博客。 http://blog.csdn.net/evanwang1987
基于java语言的二分查找,递归以及非递归算法,仅供学习娱乐
while(low){ if(x==arr[mid]){ return mid;... else if(mid<arr.length-1){//若前面没有判断,则当要查找数超过arr数组中最大值时出现死循环。 low=mid+1; mid=(low+high)/2; }
Java 二分查找算法的示例代码。 欢迎访问个人博客。 http://blog.csdn.net/evanwang1987
java二分查找算法,用于普通的代码算法。。,。。
在这个教程中,我们将深入研究二分查找算法的工作原理,并提供一个Java示例来演示如何实现它。无论您是初学者还是有经验的Java开发者,通过学习这个算法,您将获得一个强大的搜索工具,有助于在大型有序数据集中快速...
文件读出数组进行选择排序和二分查找文件读出数组进行选择排序和二分查找java实现
二分查找的三种实现方式 分别是: while for 递归
二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好,占用系统内存较少;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素...
简单地实现了二分查找的可视化。界面很简单就包括两个部分:界面左侧是可视化查找部分,右侧是二分查找的代码。 程序的关键点主要有两点: 1. 如何在页面上表示出查找程序的运行过程。 2. 如何将排序程序的运行...