package main
import (
"fmt"
)
// binarySearch 在有序数组中查找元素k的位置
func binarySearch(arr []int, k int) int {
low, high := 0, len(arr)-1
for low <= high {
mid := low + (high-low)/2
if arr[mid] == k {
return mid // 找到了元素k,返回其位置
} else if arr[mid] < k {
low = mid + 1 // 在右半部分继续查找
} else {
high = mid - 1 // 在左半部分继续查找
}
}
return -1 // 没找到元素k
}
func main() {
arr := []int{6, 17, 25, 34, 52, 63, 85}
target := 6
result := binarySearch(arr, target)
if result != -1 {
fmt.Printf("元素 %d 在数组中的位置是:%d\n", target, result)
} else {
fmt.Printf("元素 %d 不在数组中\n", target)
}
}