0% menganggap dokumen ini bermanfaat (0 suara)
77 tayangan

Interpolaration Search

Dokumen tersebut membahas tentang algoritma pencarian data yang bernama Interpolation Search yang lebih efisien dibandingkan Binary dan Sequential Search karena tidak perlu menelusuri seluruh elemen tabel. Algoritma ini hanya bekerja pada tabel yang terurut dan mencari nilai kunci dengan perkiraan lokasi data, contohnya dengan membuka kamus pada 1/3 atau 1/4 tebalnya. Kemudian dijelaskan tahapan algoritma Interpolation Search beserta contoh kode program

Diunggah oleh

Vini Ngantung
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
77 tayangan

Interpolaration Search

Dokumen tersebut membahas tentang algoritma pencarian data yang bernama Interpolation Search yang lebih efisien dibandingkan Binary dan Sequential Search karena tidak perlu menelusuri seluruh elemen tabel. Algoritma ini hanya bekerja pada tabel yang terurut dan mencari nilai kunci dengan perkiraan lokasi data, contohnya dengan membuka kamus pada 1/3 atau 1/4 tebalnya. Kemudian dijelaskan tahapan algoritma Interpolation Search beserta contoh kode program

Diunggah oleh

Vini Ngantung
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 2

Nama: Louisa V.

F Ngantung NIM: 12310571 Kelas: PTIK kelas E STRUKTUR DATA

INTERPOLATION SEARCH
Interpolation Search adalah algoritma pencarian yang lebih efisien daripada algoritma Binary dan Sequential Search. Hal ini dikarenakan algoritma ini tidak perlu menjelajahi setiap elemen dari tabel. Kerugiannya adalah algoritma ini hanya bisa digunakan pada tabel yang elemennya sudah terurut baik menaik maupun menurun. Sama seperti Binary, teknik ini hanya dapat dilakukan pada list yang telah terurut dan berada pada struktur array dan data yang dicari diperkirakan ada di dalam list. Interpolation Search adalah sebuah algoritma atau metode untuk mencari nilai key yang diberikan dalam array diindeks yang telah diperintahkan oleh nilai nilai kunci. Teknik searching ini dilakukan dengan perkiraan letak data. Contoh ilustrasi: jika kita hendak mencari suatu kata di dalam kamus telepon, misal yang berawalan dengan huruf J, maka kita tidak akan mencarinya dari awal buku, tapi kita langsung membukanya pada 1/3 atau 1/4 dari tebal kamus.

Jika data[posisi] > data yg dicari, high = pos 1 Jika data[posisi] < data yg dicari, high = pos + 1 Algoritma Interpolation Search
1. awal <- 0 2. akhir <- banyakDataArray-1 3. cari_data ? (input bilangan) 4. posisi = ((cari_data - data[awal])*(akhir-awal)+awal)/(data[akhir]data[awal]) 5. cari_data == data[posisi] ? 6. Jika sama, data telah ditemukan dan program selesai 7. Jika tidak, Bandingkan : JIKA (data[posisi] < cari_data) awal = posisi + 1; 8. lakukan langkah 4,5 9. Jika data[posisi] > cari_data, tampilkan data tidak ditemukan, program selesai

contoh coding program interpolation search c++ sederhana #include <iostream> #include <cstdlib> using namespace std; int main() { int data[5] = {2,5,8,11,16}; int cari_data, posisi, awal, akhir, proses; bool berhenti = false; cout << "Data Yang ingin dicari : "; cin >> cari_data; awal = 0; akhir = 4; proses = 0; while(berhenti != true) { proses++; posisi = (((cari_data-data[awal])*(akhir-awal))/(data[akhir]-data[awal])+awal); if(data[posisi] == cari_data) { cout << "Data " << cari_data << " pada posisi " << posisi <<endl; cout << "Proses pencaharian sebanyak " << proses <<endl; berhenti = true; } else if(data[posisi] < cari_data) { awal = posisi + 1; } else { cout << "Data " << cari_data << " Tidak ditemukan.\n"; berhenti = true; } } return 0; }

Anda mungkin juga menyukai