Java实现简单的二分法查找int数组中的某值
2015-06-30 21:41
465 查看
public static int binarySearch(int[] arr, int key,int fromIndex, int endIndex) { int low = fromIndex; int high = endIndex -1; while(low <= high) { int mid = (low + high) / 2; int midVal = arr[mid]; if(key > midVal) { low = mid + 1; } else if(key < midVal) { high = mid -1; } else { return mid;//找到,返回该值索引 } } return -1;//找不到,反回-1 }
当然,此处int数组要是排好序的~~需要的朋友参考一下
相关文章推荐
- Java常用对象
- 码讲——java日期时间API
- J2EE之JDBC
- 码讲——java-IO字节流
- 配置spring boot工程
- java多线程之通过Exchanger线程间传递数据
- 在Eclipse中安装dorado5插件
- java中关于对象的复制
- 【JavaWeb程序设计】大作业朋友圈实现过程中的错误和心得
- java 多线之用ReadWriteLock实现 一个简单缓存
- Java之旅(1)—Class类
- java多线程之CountdownLatch简单应用
- Spring注入Bean的几种方式
- Java struts2 上传2M大小限制错误
- 'tools.jar' seems to be not in Android Studio classpath. Please ensure JAVA_HOME points to JDK rathe
- 学习JAVA中(一) 一些简单的排序算法
- Spring - 如何实现IOC
- SSH-struts2入门实例
- java多线程之CyclicBarrier简单用法
- JAVA中的内部类--匿名内部类