Golang program for implementation of Binary Search
A binary search is a search strategy used to find elements within a list by consistently reducing the amount of data to be searched and thereby increasing the rate at which the search term is found. To use a binary search algorithm, the list to be operated on must have already been sorted.
Example
package main
import "fmt"
func binarySearch(needle int, haystack []int) bool {
low := 0
high := len(haystack) - 1
for low <= high{
median := (low + high) / 2
if haystack[median] < needle {
low = median + 1
}else{
high = median - 1
}
}
if low == len(haystack) || haystack[low] != needle {
return false
}
return true
}
func main(){
items := []int{1,2, 9, 20, 31, 45, 63, 70, 100}
fmt.Println(binarySearch(63, items))
}
Output
true
Most Helpful This Week
Golang program to demonstrates how to encode map data into a JSON string.
How do you set headers in an HTTP response in Go?
Struct Instantiation using new keyword
Web Application to read and write JSON data in JSON File
Exploring Blockchain: Top 15 Real-World Use Cases in 2024
Find out how many logical processors used by current process