Go實現二分法查詢

2021-08-13 02:48:38 字數 622 閱讀 8449

package main

/*go實現二分法查詢

二分法查詢基實就是折半查詢, 提前條件是陣列為有序陣列

思路:1. 確定中間位置k

2. 將要查詢的值t與array[k]比較,若相等,則查詢成功。

若array[k] < t, 則應該向大的方向找,k=k+1;

若array[k] > t, 則應該向小的方向找,k=k-1;

*/import (

"fmt"

)func binsearch(array int, s int) int

mid := (low + high) / 2

if (array[mid] < s) else

if (array[mid] > s) else

}return -1

}func main()

s := 9

n := binsearch(ary, s)

fmt.printf("要查詢的數字為[%d],在陣列中的位置為[%d]", s, n)

}

輸出:

要查詢的數字為[9],在陣列中的位置為[8]

go語言實現二分法查詢

二分法查詢原理,自不必多說,網上隨意可找到解釋,還是比較簡單的,重點在於我要練習go語言的使用,所以實現了go語言版本。package main import fmt 迴圈二分法查詢 func binarysearch s int,target int int mid low high 2 if s...

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...

python二分法查詢 Python 二分法查詢

二分法查詢主要的作用就是查詢元素 lst 1,3,5,7,12,36,68,79 資料集 百萬級資料 num int input 請輸入你要查詢的元素資訊 for el in lst if num el print 存在 break else print 不存在 len lst 0 1 2 3 4 ...