最简单的二分查找
2021-01-30 本文已影响0人
rushui
题目:
1 在有序的切片或这数组中进行查找。这里的有序不区分升序,降序
2 这里我们仅仅对元素所在的下标进行搜索查找。
3 有一个目标值。我们约定如果不在数组里面就返回一个-1
func BinarySearch(k int,a []int)int{
low := 0
high := len(a)-1
for low <= high {
mid := (low + high) / 2
if k > a[mid] {
low = mid + 1
}else if k < a[mid] {
high = mid - 1
}else {
return mid
}
}
return -1
}