Want to create interactive content? It’s easy in Genially!
SEARCHING ALGORITMA & STRUKTUR DATA
Nauly Virya
Created on January 16, 2023
Start designing with a free template
Discover more than 1500 professional designs like these:
Transcript
Let's Go
Algoritma & Struktur Data
Searching
Kelompok 4 : - Cecep Siraz Humaedi - Egi Husen Maulana - Ilhan Hafian Juldan - Nauly Virya Huska Putra - Rizal Saepul Akbar
start
POKOK PEMBAHASAN
1.
PENGERTIAN
2.
MACAM MACAM SEARCHING
3.
CONTOH PROGRAM
Algoritma & Struktur Data
I. PENGERTIAN
Pencarian data adalah suatu proses untuk mengumpulkan informasi dalam media penyimpanan komputer dan kemudian mencari kembali informasi yang diperlukan secepat mungkin.
Sedangkan Searching pada Algoritma adalah proses pencarian nilai dari sebuah larik (array) dengan membandingkan tiap-tiap elemennya berdasarkan algoritma pencarian yang digunakan.
"Untuk mengubah atau mengupdate data tertentu langkah pertama yang harus dilakukan adalah mencari keberadaan data tersebut di dalam kumpulannya."
01
Sequential Search (Pencarian Berurutan).
Macam-macam Searching
Searching di Bahasa Pemrograman Pascal terbagi menjadi 2 macam jenis :
02
Binary Search (Pencarian Bagi Dua).
Sequential Search
Sequential Search adalah pencarian yang membandingkan data yang ada satu per satu secara berurutan sampai data yang dicari ditemukan atau tidak ditemukan. Untuk N elemen data, harus dilakukan pencarian sebanyak N kali juga.
Langkah-langkah algoritma pencarian berurutan : 1. i <- 0 { Inisialisasi i dengan nilai NOL } 2. Ketemu <- false { Inisialisasi Ketemu dengan FALSE} 3. Selama (tidak ketemu) dan (i<=N) maka kerjakan nomor 4 4. Jika (Data[i] = X) maka ketemu bernilai TRUE, jika tidak tambahkan i dengan 1 5. Jika (ketemu bernilai TRUE), maka indeks dari data yang dicari adalah i, jika tidak, maka data tidak ditemukan.
Contoh Program
Sequential Search
Contoh Program Sequential Search adalah sebagai berikut :
Contoh Program
Sequential Search
Output dari Sequential Search adalah sebagai berikut :
"Konsep dari sequential search sebenarnya sangat simpel, yaitu kita memasukkan banyaknya data, lalu kita masukkan angka acak sebagai nilai tiap data yang kita input tadi. Kemudian kita search nilai yang ada di data yang di input, jika ada, maka proses akan berjalan muncul dengan memberi tahu data tersebut berada di indeks ke sekian. Sebagai contoh pada gambar output di samping, jika kita mencari angka '69' maka akan muncul di data pada indeks ke 4."
Contoh Program
Sequential Search
Output dari Sequential Search adalah sebagai berikut :
Dan jika nilai yang kita cari tidak terdapat pada data yang kita input, maka proses akan berjalan ke pemilihan else yang dimana, angka tersebut tidak ditemukan.
Binary Search
Binary search adalah algoritma pencarian untuk data yang terurut. Pencarian dilakukan dengan cara menebak apakah data yang dicari berada ditengah-tengah data, kemudian membandingkan data yang dicari dengan data yang ada ditengah. Bila data yang ditengah sama dengan data yang dicari, berarti data ditemukan. Namun, bila data yang ditengah lebih besar dari data yang dicari, maka dapat dipastikan bahwa data yang dicari kemungkinan berada disebelah kiri dari data tengah dan data disebelah kanan data tengah dapat diabai.
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). Syarat utama untuk pencarian biner adalah data di dalam tabel harus sudah terurut, misalkan terurut menaik.
ALGORITMA & STRUKTUR DATA
Alur Algoritma Binary Search
program Pencarian; {I.S : Data Array sudah terdefinisi} {F.S : Status hasil pencarian ditampilkan} DEKLARASI const Nmaks = 100 type larik = array[1..Nmaks] of integer ketemu : boolean i,N,dicari : integer A : larik ALGORITMA read(N) for i <- 1 to N do write('Data ke-',i,' : ') read(A[i]) endfor read(dicari) {PROSES PENCARIAN} ketemu <- false awal <- 1 akhir <- N while (ketemu = false) and (awal<=akhir) do tengah <- (awal + akhir)div 2; if A[tengah] = dicari then ketemu <- true else {ketemu <- false} if dicari < A[tengah] then awal <- tengah+1 else akhir <- tengah-1 endif endif endwhile if ketemu then write('Nilai ',dicari,' ditemukan di indeks ke-',tengah) else write('Nilai ',dicari,' tidak ditemukan') endif
Contoh Program
Binary Search
Contoh Program Binary Search adalah sebagai berikut :
Contoh Program
Binary Search
Output dari Binary Search adalah sebagai berikut :
Konsep Binary Search
- Jika data yang di input ke 4 dan ke 5 lebih kecil dari tengah, maka data tersebut akan muncul
- Sedangkan bila nilai terakhir lebih besar dari yang tengah, maka data tersebut akan diabaikan/tidak ditemukan.
Contoh Program
Binary Search
Output dari Binary Search adalah sebagai berikut :
"Sama halnya jika memasukkan data berangka genap, Maka data yang dicari itu data tengah."
Terima Kasih
Mohon maaf bila yang dijelaskan tidak dapat dicerna karena diluar nalar
Egi Husen Maulana
Rizal Saepul Akbar
Ilhan Hafian Juldan
Nauly Virya Huska Putra
Cecep Siraz Humaedi
224060003
224060031
224060002
224060018
224060014