Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

Binary Search - Python


Deacon

Öne çıkan mesajlar


A = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,21]

aranan = int(input("aranacak sayi :" ))

mid = int(len(A)/2)
right = len(A)
left = 0
found = 0

while left <= right and found == 0:
if A[mid] == aranan:
found = 1
else:
if aranan < A[mid]:
right = mid - 1
mid = int((left + right) /2)
else:
left = mid + 1
mid = int((left + right) /2)
if found:
print("Listenin ", mid+1,". elemani ", aranan, "sayisina esittir")
else:
print("bulunamadi")


şöyle bir şey yazdım. fakat listenin son elemanından daha büyük bir sayı aramaya çalışınca
if A[mid] == aranan:
satırında "index out of range" hatası alıyorum. aradığım sayıyı diziye index olarak kullanmıyorum ki hiçbir yerde, neden böyle oluyor?
Link to comment
Sosyal ağlarda paylaş

= [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,21]

aranan = int(input("aranacak sayi :" ))

mid = int(len(A)/2)
right = len(A)
left = 0
found = 0

while left <= right and found == 0:
if A[mid] == aranan:
found = 1
else:
if aranan < A[mid]:
TOO BAD IT'S ME
BLACKSMITH!!!
else:
left = mid + 1
mid = int((left + right) /2)
if found:
print("Listenin ", mid+1,". elemani ", aranan, "sayisina esittir"
else:
print("bulunamadi"
Link to comment
Sosyal ağlarda paylaş

×
×
  • Yeni Oluştur...