binarysearch.java

来自「用JAVA语言编写的一段代码」· Java 代码 · 共 47 行

JAVA
47
字号
package Five;

public class BinarySearch {
	public static void main(String[] args) {
		int[] a = { 1, 3, 4, 5, 7, 9, 11, 15 };
		System.out.println(binarySearch(a, 4));
	}

	public static int binarySearch(int[] a, int key) {
		int first = 0;
		int last = a.length - 1;
		int mid;
		while (first <= last) {
			mid = (first + last) / 2;
			if (a[mid] == key)
				return mid;
			if (a[mid] > key)
				last = mid - 1;
			if (a[mid] < key)
				first = mid + 1;
		}
		return -1;
	}
}

// 二分查找+顺序查找
// int getIndex(int[] nList, int nCount, int nCode) {
// int nIndex = -1;
// int jMin = 0;
// int jMax = nCount - 1;
// int jCur = (jMin+jMax)/2;
// do
// {
// if(nList[jCur] > nCode) {
// jMax--;
// } else if(nList[jCur] < nCode) {
// jMin++;
// } else if(nList[jCur] == nCode) {
// nIndex = jCur;
// break;
// }
// jCur = (jMin + jMax)/2;
// } while(jMin < jMax);
//
// return nIndex;
// }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?