方法一:
/**<b><li>实现二分查找法</b>
*
* <li>如果没有找到则返回-1
* */
public static int binaryFind(int []array,int value){
int index = -1;//未查到目标值时的
Arrays.sort(array);
int len = array.length;
int halft = len/2;
int a = 0,b =len;
while(true){
if(value > array[halft]){
a = halft;
halft = (a+b)/2;
if(a >= halft){
break;
}
}else if(value < array[halft]){
b = halft;
halft = (a+b)/2;
if(b <= halft){
break;
}
}else{
index = halft;
break;
}
}
return index;
}
方法二:
/**<b><li>实现二分查找法</b>
*
* <li>如果没有找到则返回-1
* */
public static int binarySearch(int []array,int value){
Arrays.sort(array);
int low = 0;
int hight = array.length-1;
int middle = (low + hight)/2;
while(low<=hight){
middle = (low + hight)/2;
if(value < array[middle]){
hight = middle-1;
}else if(value > array[middle]){
low = middle +1;
}else{
return middle;
}
}
return -1;
}
分享到:
相关推荐
用java实现二分查找法BianrySearch 用java实现二分查找法BianrySearch 用java实现二分查找法BianrySearch
用java二分查找法实现日期搜索 用java二分查找法实现日期搜索 用java二分查找法实现日期搜索
java 二分查找法的实现方法 java 二分查找法的实现方法
java实现二分查找,包含时间复杂度的计算
用java实现了二分查找,效率较高,思路清晰易懂。
本代码是利用java语言实现基本数据查询功能,实现算法为二分查找法
Java基础精品课06-数组循环综合应用录屏3.二分查找法.mp4
用分治法思想实现二分查找,Java语言描述。
主要介绍了java算法之二分查找法的实例详解的相关资料,这里提供简单实例帮助大家学习理解这部分内容,需要的朋友可以参考下
在js中可能会更灵活的用到a-z上,或者用到拼音…或者用到…… 不过值得深思的一个问题是,如果为了实现对拼音之类的二分查找.而经过如下流程是否值得: 1。对拼音排序,貌似代码量不小吧。 2。然后再二分查找。这又...
主要介绍了java数据结构之二分查找法 binarySearch的实例的相关资料,希望通过本文能帮助到大家,让大家理解掌握这部分内容,需要的朋友可以参考下
当你需要构建一个大的有序队列,用插入发太慢了,可以先用二分查找法,找到在队列要插入的位置,把数后移一下,然后放进去。比较效率,下面是java使用示例,需要的朋友可以参考下
java 折半查找法(二分查找)实例,需要的朋友可以参考一下
java代码-数组二分查找
Java实现的FTP连接与数据浏览程序,实现实例化可操作的窗口。 部分源代码摘录: ftpClient = new FtpClient(); //实例化FtpClient对象 String serverAddr=jtfServer.getText(); //得到服务器...
java二分查法。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
java代码-考试内容5-二分查找法
该工具包含有Java一些比较常见的排序算法和查找算法。 排序算法包括:冒泡排序、选择排序 、插入排序、希尔排序、快速排序、归并排序、基数...查找算法包括:线性查找、二分查找、插值查询、斐波那契(黄金分割法)、
代码如下:<...<head><...charset=utf-8″>... //二分查找法 数组必须是有序的 function binarySeach(arr,findval,leftIndex,rightIndex){ //找到中间的值 var midIndex=Math.floor((leftIndex
本资源包括一份分治法算法分析文档,4份Java源程序,包括二分查找、归并排序、快速排序、比赛日程安排。