go語言實現二分法查詢

2021-08-18 02:13:26 字數 661 閱讀 9834

二分法查詢原理,自不必多說,網上隨意可找到解釋,還是比較簡單的,重點在於我要練習go語言的使用,所以實現了go語言版本。
package main

import "fmt"

//迴圈二分法查詢

func binarysearch(s int, target int) int

mid := (low + high) /2

if s[mid] == target else if s[mid] > target else

} return -1

}//遞迴二分法查詢

func binarysearchrecursive(s int, target int, low int ,high int) int else if s[mid] > target else

return -1

}func main()

fmt.println("binarysearch target index: ", binarysearch(s,9))

fmt.println("binarysearchrecursive target index: ", binarysearchrecursive(s,9, 0, len(s)))

}

Go實現二分法查詢

package main go實現二分法查詢 二分法查詢基實就是折半查詢,提前條件是陣列為有序陣列 思路 1.確定中間位置k 2.將要查詢的值t與array k 比較,若相等,則查詢成功。若array k t,則應該向大的方向找,k k 1 若array k t,則應該向小的方向找,k k 1 im...

二分法查詢C語言實現

二分法查詢c語言實現 while的條件裡,也可把k 0寫到迴圈體裡面去,用break語句跳出迴圈,break可以用在迴圈語句中,也可用在switch語句中。c語言實現 include using namespace std int main high,mid,k int m 想要查詢的值 short...

C 二分法查詢,遞迴二分法

用二分法來求需要查詢的值.includeusing namespace std 查詢key元素是否存在 int findkey const int buf 100 const int ilen,const int key else right left mid 1 查詢失敗 return 1 查詢k...