Sobes.tech
Middle+
34

# Uzdevuma apraksts # Dotā ir sakārtota skaitļu secība dilstošā secībā. # Nepieciešams īstenot funkciju, kas veic bināro meklēšanu šajā secībā. # Funkcijai jā: # 1. Pieņem divus argumentus: # - sakārtotu skaitļu sarakstu, # - meklēšanas mērķa vērtību. # 2. Atgriezt atrastā elementa indeksu, ja tas ir. # 3. Atgriezt -1, ja elements nav sarakstā. # Prasības # - Risinājumam jābūt iteratīvam. # - Ir svarīgi saglabāt sarežģītību O(log n). # - Kodam jābūt rakstītam Python 3 un jāatbilst tīra koda pamatprincipiem.

Uzņēmumi, kur jautāja
devar

Atbilde no AI

sobes.tech AI

python from typing import List

def binary_search(arr: List[int], target: int) -> int: left, right = 0, len(arr) - 1 while left <= right: mid = left + (right - left) // 2 if arr[mid] == target: return mid elif arr[mid] < target: left = mid + 1 else: right = mid - 1 return -1

Пример использования:

arr = [1, 3, 5, 7, 9]

print(binary_search(arr, 5)) # Выведет 2

print(binary_search(arr, 6)) # Выведет -1