Sha256: 72d47a84161d3df15532500c490ee6aacdf3db589769664f644cc73a2f76c9b2
Contents?: true
Size: 850 Bytes
Versions: 131
Compression:
Stored size: 850 Bytes
Contents
import java.util.List; class BinarySearch<T extends Comparable<T>> { private List<T> array; private int arraySize; BinarySearch(List<T> array) { this.array = array; this.arraySize = array.size(); } int indexOf(T value) { return search(value); } private int search(T value) { int left = 0; int right = this.arraySize - 1; int middle; T element; while (left <= right) { middle = (int) Math.floor(0.5 * (left + right)); element = this.array.get(middle); if (value.compareTo(element) > 0) { left = middle + 1; } else if (value.compareTo(element) < 0) { right = middle - 1; } else { return middle; } } return -1; } }
Version data entries
131 entries across 131 versions & 1 rubygems