博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java基础之二分法查找
阅读量:6980 次
发布时间:2019-06-27

本文共 719 字,大约阅读时间需要 2 分钟。

package p;

public class NumberSearch {

/**

* @param args
* 二分查找法
*/
public static void main(String[] args) {

int[] arr = new int[] { 12, 23, 34, 45, 56, 67, 77, 89, 90 };

System.out.println(NumberSearch.NumSearch(arr, 12));
System.out.println(NumSearch(arr, 45));
System.out.println(NumSearch(arr, 67));
System.out.println(NumSearch(arr, 89));
System.out.println(NumSearch(arr, 99));
}

public static int NumSearch(int arr[], int key) {

int start = 0;
int end = arr.length - 1;
while (start <= end) {
int middle = (start + end) / 2;
if (key < arr[middle]) {
end = middle - 1;
} else if (key > arr[middle]) {
start = middle + 1;
} else {
return middle;
}
}
return -1;
}

}

转载于:https://www.cnblogs.com/netlws/p/8530234.html

你可能感兴趣的文章
手机端head部分
查看>>
对象Equals相等性比较的通用实现
查看>>
codeforces 876 D. Sorting the Coins
查看>>
maven学习(4)-Maven 构建Web 项目
查看>>
java高并发编程(二)
查看>>
【转】unity3d 在UGUI中制作自适应调整大小的滚动布局控件
查看>>
Java 对synchronized的补充Lock锁
查看>>
Collection集合List、Set
查看>>
Effective java 43返回零长度的数组或者集合而不是null
查看>>
Spring学习系列(二) 自动化装配Bean
查看>>
学习Mybatis与mysql数据库的示例笔记
查看>>
将一个普通的java项目转化为maven项目
查看>>
Interesting visualization tools for profiling.
查看>>
可以左右移动多选下拉列表的javaScipt(可以兼容IE和firefox)
查看>>
POJ 2752 Seek the Name, Seek the Fame
查看>>
Ajax
查看>>
javascript通过json数据按格式生成一个按字母分类排序的分类信息表
查看>>
错误:You can't specify target table 'xxx' for update in FROM clause的解决
查看>>
新盒模型移动端的排版
查看>>
sql语句动态创建连接服务器
查看>>