蓝桥杯软件学院:常见算法之二分查找
Posted 蓝桥杯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了蓝桥杯软件学院:常见算法之二分查找相关的知识,希望对你有一定的参考价值。
请点击上面蓝桥杯 免费订阅!
今天蓝桥杯软件学院郑老师为大家分享常见算法之二分查找,希望大家能够喜欢:
public class ArraySort
{
//........这里省略了很多代码,请参考hi.baidu.com/alex_bw/blog/item/b817682041ec5348ac34de67.html中所示范的排序
private static int binarySearch0(int[] a, int fromIndex, int toIndex,
int key)
{
int low = fromIndex;
int high = toIndex - 1;
while (low <= high)
{
int mid = (low + high) >>> 1;
int midVal = a[mid];
if (midVal < key)
low = mid + 1;
else if (midVal > key)
high = mid - 1;
else
return mid; // key found
}
return -(low + 1); // key not found.
}
public static void main(String[] args)
{
int[] x =
{ 49, 38, 65, 97, 76, 13, 27, 12, 18, 54, 20, 9, 8, 5, 6 };
System.out.println("begin..." + Arrays.toString(x));
// maopao(x, 0, x.length);
// xuanze(x, 0, x.length);
// charu(x, 0, x.length);
kuaisu(x, 0, x.length);
System.out.println("final..." + Arrays.toString(x));
int index = binarySearch0(x, 0, x.length - 1, 27);
System.out.println(index);
}
}
如果大家还不明白的话,欢迎大家参加蓝桥杯软件学院的免费实训计划。
============================
分享最光荣!轻击屏幕右上方即刻分享!
以上是关于蓝桥杯软件学院:常见算法之二分查找的主要内容,如果未能解决你的问题,请参考以下文章