mirror of
https://github.com/cubixle/codekata-golang.git
synced 2026-04-30 21:38:40 +01:00
二分查找
This commit is contained in:
+9
-5
@@ -5,11 +5,15 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func search(n int, nums []int) int {
|
func search(n int, nums []int) int {
|
||||||
l := len(nums)
|
low, high := 0, len(nums)-1
|
||||||
c := l / 2
|
for low <= high {
|
||||||
for {
|
mid := low + (high-low)/2
|
||||||
if c == 0 {
|
if nums[mid] == n {
|
||||||
|
return mid
|
||||||
|
} else if n < nums[mid] {
|
||||||
|
high = mid - 1
|
||||||
|
} else if n > nums[mid] {
|
||||||
|
low = mid + 1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return -1
|
return -1
|
||||||
|
|||||||
Reference in New Issue
Block a user