result = binary_search(sorted_array, target_element)
if result != -1:
print(f"Elemen ditemukan di indeks {result}")
else:
print("Elemen tidak ditemukan dalam array.")
Penjelasan:
Dalam contoh di atas, fungsi binary_search menerima array yang sudah terurut dan elemen yang ingin dicari. Algoritma bekerja dengan membagi array menjadi setengah pada setiap langkahnya dan membandingkan elemen tengah dengan target. Jika elemen tengah sama dengan target, pencarian selesai dan indeks elemen ditemukan dikembalikan. Jika elemen tengah kurang dari target, pencarian dilanjutkan di setengah kanan array. Jika elemen tengah lebih dari target, pencarian dilanjutkan di setengah kiri array.
Algoritma pencarian biner ini memiliki kompleksitas waktu O(log n), yang membuatnya sangat efisien untuk array yang besar. Namun, perlu diingat bahwa algoritma ini hanya berfungsi dengan benar pada array yang sudah terurut.
Jangan lupa untuk menjadikan Jawaban ini yang Terbaik jika membantu. Semoga Berhasil
Jawaban:
contoh algoritma pencarian biner dalam bahasa pemrograman Python:
def binary_search(arr, target):
left, right = 0, len(arr) - 1
while left <= right:
mid = left + (right - left) // 2
if arr[mid] == target:
return mid # Elemen ditemukan, mengembalikan indeks
elif arr[mid] < target:
left = mid + 1 # Cari di setengah kanan array
else:
right = mid - 1 # Cari di setengah kiri array
return -1 # Elemen tidak ditemukan
# Contoh array terurut
sorted_array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# Elemen yang ingin dicari
target_element = 7
# Panggil fungsi pencarian biner
result = binary_search(sorted_array, target_element)
if result != -1:
print(f"Elemen ditemukan di indeks {result}")
else:
print("Elemen tidak ditemukan dalam array.")
Penjelasan:
Dalam contoh di atas, fungsi binary_search menerima array yang sudah terurut dan elemen yang ingin dicari. Algoritma bekerja dengan membagi array menjadi setengah pada setiap langkahnya dan membandingkan elemen tengah dengan target. Jika elemen tengah sama dengan target, pencarian selesai dan indeks elemen ditemukan dikembalikan. Jika elemen tengah kurang dari target, pencarian dilanjutkan di setengah kanan array. Jika elemen tengah lebih dari target, pencarian dilanjutkan di setengah kiri array.
Algoritma pencarian biner ini memiliki kompleksitas waktu O(log n), yang membuatnya sangat efisien untuk array yang besar. Namun, perlu diingat bahwa algoritma ini hanya berfungsi dengan benar pada array yang sudah terurut.
Jangan lupa untuk menjadikan Jawaban ini yang Terbaik jika membantu. Semoga Berhasil