Selasa, 30 Juni 2009

SEARCHING

SEARCHING

Searching adalah teknik pencarian data dalam array dengan cara menelusuri semua elemen – elemen array dari awal sampai akhir.

Macam – macam searching

- Binary search

- Sequential search

BINARY SEARCH

binary search adalah proses pencarian untuk pencarian data yang terurut. Pencarian dilakukan dengan cara menebak apakah data yang dicari berada ditengah – tengah, kemudian membandingkan data yang dicari dengan data yang berada ditengah.

Ilustrasi

Misalkan kita mempunyai data sebagai berikut :

0 1 2 3 4 5 6 7 8 → index

2 3 5 7 9 11 18 27 36 → value

Kita ingin mencari mencari angca 11

Langkah 1

Kita cari data yang terletak ditengah – tengah

0 1 2 3 4 5 6 7 8 → index

2 3 5 7 9 11 18 27 36 → value

Angka yang berwarna merah adalah data yang terletak ditengah – tengah. Sekarang kita akan bandingkan data yang kita cari dengan data yang berada ditengah. Data yang kita cari lebih besar dari data yang ada ditengah, maka dapat dipastikan data yang kita cari berada di sebelah kanan dari data tengah, dan data yang ada di sebelah kiri data tengah dapat kita abaikan.

Langkah 2

Kita ambil data yang berada disebelah kanan dari data tengah

4 5 6 7 8 → index

9 11 18 27 36 → value

Kemudian kita cari data tengah dari data diatas. Angka yang berwarna merah adalah dat yang terletak ditengah – tengah. Kita akan bandingkan data yang kita cari dengan data yang ada ditengah. Data yang kita cari lebih kecil dari data tengah, maka dapat dipastikan data yang kita cari berada disebelah kiri data tengah, dan data yang ada disebelah kanan dari data tengah dapat kita abaikan.

Langkah 3

Kita ambil data yang berada disebelah kiri dari data tengah

4 5 6 → index

9 11 18 → value

Kemudian kita cari data tengah dari data diatas. Angka yang berwarna merah adalah data yang terletak ditengah – tengah. Sekarang kita akan bandingkan data yang kita cari dengan data yang ditengah. Data yang kita cari sama dengan data tengah. Berarti data ditemukan pada index ke – 5

SEQUENTIAL SEARCH

Squential search adalah proses membandingkan setiap elemen larik satu persatu secara beruntun, mulai dari elemen pertama sampai elemen yang dicari ditemukan

Ilustrasi

Misalkan kita menpunyai data sebagai berikut

0 1 2 3 4 → index

9 3 6 27 36 → value

Kita ingin mencari angka 6

Langkah 1

Data yang kita cari, kita bandingkan dengan data pada index ke – 0 . Data yang kita cari tidak sama dengan data yang terletak pada index – 0, maka proses dilanjutkan

Langkah 2

Data yang kita cari, kita bandingkan dengan data pada index ke – 1 . Data yang kita cari tidak sama dengan data yang terletak pada index – 1, maka proses dilanjutkan

Langkah 3

Data yang kita cari, kita bandingkan dengan data pada index ke – 2 . Data yang kita cari sama dengan data yang terletak pada index – 2, maka data ditemukan pada index ke – 2 .Proses dihentikan

Tidak ada komentar:

Posting Komentar