pb62196676

Exploring binary search

Nov 5th, 2026
11
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.67 KB | None | 0 0
  1. Exploring binary search
  2.  
  3. Предлагаю решить задачу вместе: без спешки, с объяснением каждой строки.
  4.  
  5. Задача
  6.  
  7. Дан отсортированный список чисел arr и число target. Найти его индекс или вернуть -1, если элемента нет.
  8.  
  9. Решение
  10.  
  11. ``python
  12. def binary_search(arr: list[int], target: int) -> int:
  13. lo, hi = 0, len(arr) - 1
  14. while lo <= hi:
  15. mid = (lo + hi) // 2
  16. if arr[mid] == target:
  17. return mid
  18. if arr[mid] < target:
  19. lo = mid + 1
  20. else:
  21. hi = mid - 1
  22. return -1
  23.  
  24. print(binary_search([1, 3, 5, 7, 9, 11], 7))
  25. `
  26.  
  27. Как это работает
  28.  
  29. На каждом шаге диапазон поиска сокращается вдвое: если середина меньше цели — ищем справа, иначе слева. Отсюда и логарифмическая скорость.
  30.  
  31. Пример работы
  32.  
  33. `text
  34. 3
  35. ``
  36.  
  37. Сложность
  38.  
  39. O(log n) по времени, O(1) по памяти.
  40.  
  41. Это решение удобно как отправная точка для экспериментов: попробуйте изменить входные данные и проследить за поведением кода.
  42.  
  43. View Full Gallery → https://go.cbrop.com/prse
  44.  
  45. Related:
  46.  
  47. https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/11/twitter-nsfw-leaks-211446.pdf
  48. https://gall.dcinside.com/mgallery/board/view/?id=nmixxreality&no=3555
  49. https://gal64833.carrd.co/
  50. https://pastebin.com/qEMMuAgF
  51. https://discuss.tchncs.de/post/65444693
  52.  
Advertisement
Add Comment
Please, Sign In to add comment