binarySearcha method
int
binarySearcha(
- List<T> data,
- T target
)
Implementation
int binarySearcha(List<T> data, T target) {
final stopWatch = Stopwatch()..start();
int left = 0;
int right = data.length - 1;
while (left <= right) {
int mid = left + (right - left) ~/ 2;
if (data[mid] == target) {
stopWatch.stop();
print(
"Binary Search took ${stopWatch.elapsedMicroseconds} microseconds");
return mid;
} else if ((data[mid] as Comparable).compareTo(target) < 0) {
left = mid + 1;
} else {
right = mid - 1;
}
}
stopWatch.stop();
print("Binary Search took ${stopWatch.elapsedMicroseconds} microseconds");
return -1;
}