java 二分查找_Java实现的二分查找(折半查找)

public class BinarySearch {

/**

* 二分查找算法

*

* @param srcArray 有序数组

* @param des 查找元素

* @return des的数组下标,没找到返回-1

*/

public static int binarySearch(int[] srcArray, int des)

{

int low = 0;

int high = srcArray.length-1;

while(low <= high)

{

int middle = (low + high)/2;

if(des == srcArray[middle])

{

return middle;

}

else if(des

{

high = middle - 1;

}

else

{

low = middle + 1;

}

}

return -1;

}

public static void main(String[] args)

{

int[] src = new int[] {1, 3, 5, 7, 8, 9};

System.out.println(binarySearch(src, 3));

}

}

分享到:

2013-09-21 20:34

浏览 2206

分类:非技术

评论

public class BinarySearch { /** * 二分查找算法 * * @param srcArray 有序数组 * @param des 查找元素 * @return des的数组下标,没找到返回-1 */ public static int binarySearch(int[] srcArray, int des) { int low = 0; int high = srcArray.length-1; while(low <= high) { int middle = (low + high)/2; if(des == srcArray[middle]) { return middle; } else if(des { high = middle - 1; } else { low = middle + 1; } } return -1; } public static void main(String[] args) { int[] src = new int[] {1, 3, 5, 7, 8, 9}; System.out.println(binarySearch(src, 3)); } } 分享到: 2013-09-21 20:34 浏览 2206 分类:非技术 评论
经验分享 程序员 微信小程序 职场和发展