Ищем в отсортированном массиве за O(log n). low, high := 0, len(arr)-1. В цикле mid := low + (high-low)/2 (не (low+high)/2 — overflow!). Если arr[mid] == target — нашли. Если arr[mid] < target — low = mid+1. Иначе high = mid-1. Цикл пока low <= high. В Go есть sort.Search и slices.BinarySearch. Частые ошибки: неправильные границы (бесконечный цикл), overflow при вычислении mid, off-by-one при low <= high vs low < high.
Как реализовать binary search?
Junior
313 просмотровAFK Offer AI
Как найти goroutine leak?