用递归实现二分查找 JAVA
2015-10-01 22:26
585 查看
package AlgorithmTest; import java.util.Arrays; /** * Created by dell on 2015/10/1. */ public class BinarySearchWithRecusionTest { public static void main(String[] args) { int[] array = new int[]{9,8,7,6,5,4,3,2,1}; Arrays.sort(array); System.out.println(binarySearchWithRecusion(array, 8)); System.out.println(binarySearchWithRecusion(array, 10)); } public static int binarySearchWithRecusion(int[] array,final int findData){ if (null != array && 0 != array.length){ return binarySearchWithRecusionUnit(array, findData, 0, array.length); } return -1; } public static int binarySearchWithRecusionUnit(int[] array, final int findData, int begin, int end) { if (begin < end){ int mid = (begin + end) / 2; if (findData == array[mid]){ return mid; }else{ if (findData > array[mid]){ return binarySearchWithRecusionUnit(array, findData, mid + 1, end); }else{ return binarySearchWithRecusionUnit(array, findData, begin, mid - 1); } } }else{ return -1; } } }
相关文章推荐
- Java基础知识强化之集合框架笔记11:Collection集合之迭代器的原理及源码解析
- java commons.lang3 ArrayUtils使用
- 初入JAVAMAIL之如何能运用其文件笔记
- 熟练知道eclipse中outline里各个图标的含义
- Java入门01
- Java中的委托模式
- 如何让eclipse在程序修改后,点击运行可以自动保存。
- JavaAPI_3
- java robot机器人
- 惠普实训第一阶段总结,java项目总结,第二阶段计划
- Java日期操作(包含Java8)
- 用java在mysql中随机插入9000 000条数据
- java native方法及JNI实例
- java语言基础(二)
- java13:递归
- JAVA基础--db19_javaIO流缓冲区
- JDK配置
- Java基础知识强化之集合框架笔记10:Collection集合使用的步骤
- Java 使用urlconnection下载文件或图片并保存到本地
- 用递归判断一个数组是否递增 JAVA代码