Daftar Isi :

  1. Metode Searching dalam Struktur Data dan Implementasi Pemrogramannya
  2. Pseudo Code Metode Sequential Liniear Searching pada Struktu Data
  3. Contoh Implementasi Metode Sequential Linier Searching dalam Pemrograman
  4. Metode Binary Searching dalam Struktur Data
  5. Pseudo code Metode Binary Searching dalam Struktur Data
  6. Implementasi Metode Binary Searching dalam Pemrograman

Searching dalam Komputer merupakan Fitur yang sering kita gunakan dalam proses mencari. Namun bagaiman metode Searching?. Disini akan membahas metode searching dalam struktur Data. Sebelum itu anda harus mengetahui definisi Searching.

Searching dalam pemrograman  adalah proses yang sangat fundamental Guna mencari data tertentu dalam sekumpulan data tentunya yang memiliki tipe yang sama. Pencarian diperlukan untuk mencari informasi khusus dari tabel / kumpulan data pada saat lokasi yang pasti dari informasi tersebut sebelumnya tidak diketahui.  Data pada tabel biasanya disimpan dengan menggunakan tipe data Array yang dimana Array memungkinkan untuk menyimpan nilai yang bertipe sama.

Adapun Metode yang digunakan dalam Searching dalam Struktur Data sebagai berikut :

  1. Metode Pencarian Beruntun (Sequential/Linear Searching)
  2. Metode Pencarian Bagi Dua (Binary Searching)

Sequential / Linier Searching

Sequential Searching sebuah metode pencarian yang Konsepnya membandingkan sekumpulan elemen data yang ada dengan mengeceknya satu-persatu dari awal sampai akhir apakah data tersebut ditemukan atau tidak.

Adapun Cara Kerja Metode Sequential / Linier Searching :

  1. Input              

: Data Array sebanyak Ukuran.

  1. Output            

: Data kunci dalam array.

  1. Prinsip            

: Setiap data pada aray akan dibandingkan dengan kunci sampai pada data yang terakhir (kasus terburuk (worst case)).

  1. Metode           
    1. Bila pada posisi ke-i data sama dengan kunci, berarti data ditemukan pada posisi ke-i.
    2. Bila sampai akhir data, data tidak juga ditemukan berarti kunci tidak ada pada array.

Jika Diilustrasikan dalam Pseude metode Sequential / Linier Searching seperti berikut :

Dan berikut Contoh Implementasi Metode Sequential / Linier Searching dalam Pemrograman seperti contoh berikut :

Binary Searching

Binary Searcing adalah metode dengan Prinsip dasarnya adalah melakukan proses pembagian ruang pencarian secara berulang-ulang sampai data ditemukan atau sampai ruang pencarian tidak dapat dibagi lagi (berarti ada kemungkinan data tidak ditemukan). Metode ini Memperkecil jumlah operasi pembandingan yang harus dilakukan antara data yang dicari dengan data yang ada di dalam tabel, khususnya untuk jumlah data yang sangat besar ukurannya. Syarat dalam metode ini adalah Data sudah dalam keadaan terurut (naik) ascending

Adapun Cara Kerja Metode Binary Searching dalam Struktur data seperti berikut :

  1. kunci akan selalu dibandingkan dengan data yang berada di tengah (middle)
  2. bila sama berarti data ketemu, bila tidak, akan “dilihat” apakah data ada di sebelah “kiri” (artinya data lebih kecil dari data di tengah) atau di sebelah “kanan” (artinya data lebih besar dari data di tengah).
  3. Bila data ada di sebelah kiri, dilakukan pencarian dengan cara yang sama (sementara data yang berada di sebelah kanan akan diabaikan).
  4. Jadi, setiap kali pencarian, data selalu “dibelah” menjadi dua bagian (biner), sampai pada “titik tertentu”(bila sama dengan titik tengah, pencarian tidak dilakukan lagi, bila tidak, lakukan pencarian lagi sampai pada perbandingan terakhir data juga tidak sama, berarti data tidak ditemukan pada array).

Jika diilustrasikan dalam Gambar mengenai Metode Binary Searching seperti berikut :

Untuk Mengimplemenatiskan ke dalam pemrograman maka diperlukan Pseudo Code. Dan berikut pseudo code untuk metode Binary Searching dalam Struktur Data :

Dan berikut contoh Implementasi metode Binary Searching dalam bahasa pemrograman C++ :

Demikian Mengenai Metode Searching dalam Struktur Data dan Implementasi Pemrogramannya Semoga bermanfaat

Referensi :

  1. Antony Pranata, Pemrograman Borland C++, Andi Offset, Yogyakarta
  2. Moh. Sjukani, Algoritma dan Struktur data dengan C, C++, dan Java, Mitra Wacana Media , 2005
  3. Walter Savitch , Problem Solving With C++: The Object of Programming, forth edition,  Addison  Wesley
  4. Lamhot  Sitorus  &  David  J.M.  Sembiring,  Konsep   dan  Implementasi  Struktur  Data dengan C++, Andi Offset, Yogyakarta
  5. Online Reading, www://cplusplus.com