Methods Summary |
---|
static int | binarySearch(int[] array, int size, int value)
int lo = 0;
int hi = size - 1;
while (lo <= hi) {
int mid = (lo + hi) >>> 1;
int midVal = array[mid];
if (midVal < value) {
lo = mid + 1;
} else if (midVal > value) {
hi = mid - 1;
} else {
return mid; // value found
}
}
return ~lo; // value not present
|
static int | binarySearch(long[] array, int size, long value)
int lo = 0;
int hi = size - 1;
while (lo <= hi) {
final int mid = (lo + hi) >>> 1;
final long midVal = array[mid];
if (midVal < value) {
lo = mid + 1;
} else if (midVal > value) {
hi = mid - 1;
} else {
return mid; // value found
}
}
return ~lo; // value not present
|
public static boolean | equal(java.lang.Object a, java.lang.Object b)
return a == b || (a != null && a.equals(b));
|
public static int | idealByteArraySize(int need)
for (int i = 4; i < 32; i++)
if (need <= (1 << i) - 12)
return (1 << i) - 12;
return need;
|
public static int | idealIntArraySize(int need)
return idealByteArraySize(need * 4) / 4;
|
public static int | idealLongArraySize(int need)
return idealByteArraySize(need * 8) / 8;
|