java入门--二分查找算法

二分查找算法

要点:定义3个变量来标识元素的查找范围,通过让目标值和每次查找范围的中间值来做比较,不断缩小查找范围,从而避免全部遍历来查找目标元素.

示例代码:

/*

二分查找算法

*/

class Demo9

{

public static void main(String[] args)

{

int[] arr = {1,23,12,-9,15,31};

int a = 30;

int index = halfSearch(arr,a);

if (index != -1)

{

System.out.println(a+"的索引是:"+index);

}

else

{

System.out.println("不好意思,没找到!");

}

}

public static int halfSearch(int[] arr, int target)

{

int min = 0;

int mid = arr.length/2;

int max = arr.length;

while(true)

{

if (target > arr[mid])

{

min = mid + 1;

}

else if (target < arr[mid])

{

max = mid - 1;

}

else

{

return mid;

}

if(max < min)

{

return -1;

}

mid = (min+max)/2;

}

}

}

示例截图:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容