Transcript Searching

Algoritma & Struktur Data-II
SEARCHING
Imam Gunawan, M. Kom
LOGO
STMIK – AMIK Jayanusa Padang
Pengantar
Searching adalah pencarian data yang ada di dalam
suatu Kelompok Data (Array atau Database).
Sequential Searching
Binary Searching
Sequential Searching
Pada Sequential Searching, data yang
dicari akan dibandingkan satu persatu
dengan data yang ada di dalam array.
Mulai data pertama sampai dengan
data yang dicari ditemukan.
Kelebihan : Algoritma Program
sederhana (mudah di pahami)
Kekurangan : Pencarian data
memakan waktu relatif lama, karena
harus mencari satu persatu.
Contoh : Data yang dicari 17
0
1
2
3
4
5
6
18
11
23
21
19
17
24
17 = 18
Tidak
17 = 11
Tidak
17 = 23
Tidak
17 = 21
Tidak
17 = 19
Tidak
17 = 17
Sama, Maka data “Ketemu”
Binary Searching
Adalah teknik pencarian data dalam array dengan cara membagi
array menjadi dua bagian setiap kali terjadi proses pengurutan.
Syarat Pencarian Biner, Data harus terurut.
Kelebihan Binary adalah pencarian lebih cepat, namun program
sedikit rumit.
Prinsip pencarian biner adalah:
 Data diambil dari posisi 1 sampai posisi akhir N
 Kemudian cari posisi data tengah dengan rumus (posisi awal +
posisi akhir) / 2
 Kemudian data yang dicari dibandingkan dengan data yang di
tengah, apakah sama atau lebih kecil, atau lebih besar ?
 Jika lebih besar, maka proses pencarian dicari dengan posisi awal
adalah posisi tengah + 1
 Jika lebih kecil, maka proses pencarian dicari dengan posisi akhir
adalah posisi tengah – 1
 Jika data sama, berarti ketemu.
Contoh : Data yang dicari 17
0
1
2
3
4
5
6
18
11
23
21
19
17
24
Hasil Sort :
0
1
2
3
4
5
6
11
17
18
19
21
23
24
Proses 1 : (0 + 6)/2 = 3
Data Tengah (Data ke-3) = 19
Karena 17 < 19 (data tengah), maka: Akhir = tengah – 1
Proses 2 : (0 + 2)/2 = 1
Data Tengah (Data ke-1) = 17
Karena 17 = 17 (data tengah), maka DATA KETEMU!
LOGO