【算法】程序猿不写代码是不对的24

来源:互联网 发布:java jdk1.7 64位 编辑:程序博客网 时间:2024/06/07 05:19
package com.kingdz.algorithm.time201703;import java.util.Arrays;import com.kingdz.algorithm.time201702.Algo13;/** * 折半查找递归版本 *  * @author kingdz *  */public class Algo01 {public static void main(String[] args) {int count = 10;int[] number = new int[count];number = Algo13.fillArray(count, false);System.out.println(Arrays.toString(number));Arrays.sort(number);System.out.println(Arrays.toString(number));int index = binarySearch(number, 0, number.length, 10);System.out.println(index);}/** *  * @param number *            需要查找的数组 * @param start *            开始位置 * @param end *            结束位置 * @param find *            需要查找的元素 * @return */private static int binarySearch(int[] number, int start, int end, int find) {int middle = (start + end) / 2;if (number[middle] == find) {return middle;} else if (number[middle] > find) {if (middle - start <= 1) {return -1;}return binarySearch(number, start, middle, find);} else {if (end - middle <= 1) {return -1;}return binarySearch(number, middle, end, find);}}}

0 0
原创粉丝点击