折半查找法
程序员文章站
2022-03-15 11:43:23
...
package com.sort;
public class HalfRearch {
public static void main(String[] args) {
int[] arr={2,6,9,15,21,30,35,63};
halfSearch(arr,30);
}
public static int halfSearch(int[] data, int value) {
// 开始下标
int startPos = 0;
// 结束下标
int endPos = data.length - 1;
while (startPos <= endPos) {
int midPos = (startPos + endPos) / 2;
//返回下标
if (value == data[midPos]) {
System.out.println(midPos);
return midPos;
} else if (value > data[midPos]) {
startPos = midPos + 1;
} else if (value < data[midPos]) {
endPos = midPos - 1;
}
}
//没有此元素
return -1;
}
}
上一篇: 常见的查找算法----折半查找(JavaScript实现)
下一篇: Java编写简单的自定义异常类