28 lines
401 B
Go
28 lines
401 B
Go
package utils
|
|
|
|
// BinarySearch BinarySearch
|
|
func BinarySearch(s []string, t string, n int) (idx int) {
|
|
idx = -1
|
|
if n == 0 {
|
|
return
|
|
}
|
|
start, end := 0, n-1
|
|
for start <= end {
|
|
mid := (start + end) >> 1
|
|
if s[mid] < t {
|
|
start = mid + 1
|
|
} else if s[mid] > t {
|
|
end = mid - 1
|
|
} else {
|
|
idx = mid
|
|
break
|
|
}
|
|
}
|
|
return
|
|
}
|
|
|
|
var YesOrNo = map[bool]string{
|
|
true: "是",
|
|
false: "否",
|
|
}
|