#pragma once
//折半查找
template<class T>
int binarySearch(const T list[], int n, const T& key) {
int low = 0;
int high = n - 1;
while (low <= high) {
int mid = (low + high) / 2;
if (key == list[mid]) {
return mid;
}
else if(key<list[mid]){
high = mid - 1;
}
else if(key>list[mid]){
high = mid + 1;
}
}
return -1;
}