二分查找

来源:互联网 发布:qt串口编程 编辑:程序博客网 时间:2024/05/16 12:48
public class BinarySearch {//时间复杂度为O(nlgn)public static void main(String[] args) {       int[] arr = {1,2,3,4,5,6,7,8,9,10};       binarySearch(arr, 0, 11);}//二分查找  前提:数据必须是有序的private static boolean binarySearch(int[] arr, int len, int key){int low = 0, high = arr.length -1, middle = (low + high) / 2;while(low <= high && key != arr[middle]){if(key > arr[middle]){low = middle + 1;}if(key < arr[middle]){high = middle - 1;}middle = (low + high) / 2;if(key == arr[middle]){System.out.println("找到了元素"+key);return true;}}System.out.println("未查到元素"+key);return false;}}

0 0
原创粉丝点击