目录
1.冒泡排序
package main
import "fmt"
func sort(arr *[5]int){
temp := 0
for i:=0;i<len(*arr)-1;i++{
for j:=0;j<len(*arr)-1-i;j++{
if (*arr)[j]>(*arr)[j+1]{
temp = (*arr)[j]
(*arr)[j] = (*arr)[j+1]
(*arr)[j+1] = temp
}
}
}
}
func main(){
arr := [5]int{24,69,80,57,13}
fmt.Println("排序前:",arr)//排序前: [24 69 80 57 13]
sort(&arr)
fmt.Println("排序后:",arr)//排序后: [13 24 57 69 80]
}
2.二分查找
package main
import "fmt"
func main(){
arr := [6]int{24,69,80,100,130,200}
BinaryFind(&arr,0,len(arr)-1,100)
}
func BinaryFind(arr *[6]int,leftIndex int,rightIndex int,findVal int){
if leftIndex > rightIndex {
fmt.Println("没找到")
return
}
meddal := (leftIndex+rightIndex)/2
if (*arr)[meddal] > findVal{
rightIndex = meddal-1
BinaryFind(arr,leftIndex,rightIndex,findVal)
}else if (*arr)[meddal] < findVal {
leftIndex = meddal +1
BinaryFind(arr,leftIndex,rightIndex,findVal)
}else{
fmt.Println("找到了,下标为:",meddal)//找到了,下标为: 3
}
}