Binary Search



Definisi

Binary Search adalah metode pencarian suatu data atau elemen di dalam suatu array dengan kondisi data dalam keadaan terurut. Proses pencarian binary search hanya dapat dilakukan pada sekumpulan data yang sudah diurutkan terlebih dahulu. 

Ilustrasi

















Algoritma

1. Mula-mula diambil posisi awal = 1 dan posisi akhir = N
2. Cari posisi data tengah dengan rumus ( posisi awal + posisi akhir )  / 2
3. Data yang dicari dibandingkan dengan data tengah.
4. Jika lebih kecil, proses dilakukan kembali tetapi posisi akhir dianggap sama dengan posisi tengah - 1.
5. Jika lebih besar, proses dilakukan kembali tetapi posisi akhir dianggap sama dengan posisi tengah + 1.
6. Demikian seterusnya sampai data tengah sama dengan yang dicari.

Kode Program

a = [4,7,2,3,5,1,6]
b = int(input("Masukkan angka yang dicari : "))
a.sort()
print(a)


def binarySearch(alist, item):
    first = 0
    last = len(alist)-1

    while first<=last:
        midpoint = int(first + last)//2
        if alist[midpoint] > item:
            last = midpoint - 1
        elif alist[midpoint] < item:
            first = midpoint + 1
        else:
            return midpoint

Comments

Popular Posts