The list of methods to do Binary Search are organized into topic(s).
int
binarySearch(byte[] a, int key) Search for a big-endian 4-byte integer in a array of bytes.
int low = 0;
int high = a.length;
while (low < high) {
int mid = (low + high) >>> 1;
if (mid % 4 != 0) {
if (high == a.length) {
mid = low;
} else {
...
int
binarySearch(char[] arr, int key) binary Search
int length = arr.length;
if (key <= arr[length - 1]) {
int l = 0;
int r = length - 1;
while (l <= r) {
int mid = (l + r) >>> 1;
char val = arr[mid];
if (key > val) {
...
int
binarySearch(double experience, int min, int max) Utilizes a basic binary search algorithm to find the level for the specified experience.
int mid = (min + max) / 2;
double value = EXPERIENCE_TABLE[mid];
if (value > experience) {
return binarySearch(experience, min, mid - 1);
} else if (value == experience || EXPERIENCE_TABLE[mid + 1] > experience) {
return mid + 1;
} else {
return binarySearch(experience, mid + 1, max);
...
int
binarySearch(double values[], double search) binary Search
int min = 0, max = values.length;
int index = max / 2;
while (max - min > 1) {
if (values[index] == search) {
return index;
if (values[index] < search) {
min = index;
...
int
binarySearch(double[] a, double key) Perform a binary search on a sorted array a to find the element with the nearest element to key .
int l = 0;
int h = a.length - 1;
int i;
do {
i = (int) (((long) l + (long) h) / 2L);
if (key > a[i]) {
l = i + 1;
} else if (key < a[i]) {
...
int
binarySearch(final double[] array, final double val) binary Search
int low = 0;
int high = array.length - 1;
final boolean keyIsNaN = Double.isNaN(val);
while (low <= high) {
final int mid = (low + high) >> 1;
final double midVal = array[mid];
if (midVal < val) {
low = mid + 1;
...