概述
package main
import (
"fmt"
)
func main(){
arr := [6]int{1,2,3,5,7}
BinaryFind(&arr,0,len(arr)-1,5)
}
// 二分查找,数组必须有序,下一次查找必须是:中间下标的后一个或前一个开始
func BinaryFind(arr *[6]int,leftIndex,rightIndex,findVal int){
if leftIndex > rightIndex {
fmt.Println("没找到")
return
}
midleIndex := (leftIndex + rightIndex)/2
if arr[midleIndex] > findVal {
BinaryFind(arr,leftIndex,midleIndex - 1,findVal)
}else if arr[midleIndex] < findVal {
BinaryFind(arr,midleIndex + 1,rightIndex,findVal)
}else{
fmt.Println("找到了:",midleIndex)
}
}
最后
以上就是动人滑板为你收集整理的go语言实现二分查找的全部内容,希望文章能够帮你解决go语言实现二分查找所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复