Pasar ...
... ...
... ...
... ...
... ...
... Jarak
... ...
... ...
... ...
... ...
... ...
ketersediaan ... ...
... ...
... ...
... ...
... ...
2. Langkah selanjutnya ke pasar ... pertama, cek ketersediaan. Jika tidak ada lanjut
ke pasar berikutnya. 3.
Langkah selanjutnya ke pasar ..., cek ketersediaan. Jika tidak ada lanjut ke pasar berikutnya.
4. ...
: n. langkah ke n hingga ditemukan buah yang dicari. Pencarian paling banyak hingga
10 kali pencarian. Buatlah dalam program dengan bahasa Pascal dan tuliskan hasilnya pada kotak dibawah.
2.2.2.4. Mengasosiasi
Pada permasalah menanya di atas dilakukan pencarian dengan algoritma pencarian linier yang memiliki kemungkinan terburuk melakukan perbandingan 10 kali. Tetapi untuk permasalahan
1, memiliki kemungkinan terburuk melakukan perbandingan 5 kali. Hali ini dikarenakan pencarian pada pasar yang berbeda jumlahnya. Dari hal tersebut dapat dilihat, bahwa melakukan pencarian
dengan penggunaan algoritma pencarian beruntun, jika semakin besar kumpulan data yang dicari, maka makin banyak juga proses atau perbandingannya.
Sebenarnya, menggunakan algoritma pencarian linier pada aplikasi langkah awal yang harus dilakukan adalah membuat urutan data yang akan dibandingkan. Kemudian baru
membandingkan data satu per satu secara beruntun dari data pertama hingga data terakhir.
2.2.3. Rangkuman
Penggunaan algoritma pencarian linier pada aplikasi sangat bermanfaat jika data yang dicari ada pada sekumpulan sedikit data. Jika pada data besar, pencarian ini tidak praktis dan tidak
efisien
2.2.4. Tugas
Carilah manfaat dari penggunaan algoritma pencarian beruntun dalam kehidupan sehari-hari
2.3. Kegiatan Belajar 3. Pengurutan Data Dengan Algoritma Bubble Sort Alokasi Waktu : 2x45 Menit
2.3.1. Tujuan Pembelajaran
1. Peserta didik mampu memahami algoritma pengurutan. 2. Peserta didik mampu membuat algoritma pengurutan gelembung.
2.3.2. Aktivitas Belajar Siswa
2.3.2.1. Mengamati
Pengurutan sorting adalah proses mengatur sekumpulan objek menurut urutan atau susunan tertentu. Masalah pengurutan dapat ditulis sebgai berikut:
Diberikan array A dengan n elemen yang sudah terdefinisi elemen-elemennya. Urutan array sehingga tersusun secara menaik ascending:
A[1] ≤ A[2] ≤ A[3] ≤ ... ≤ A[n] Atau secara menurun descending:
A[1] ≥ A[2] ≥ A[3] ≥ ... ≥ A[n]
Dalam kehidupan sehari-hari, kata di dalam kamus bahasaistilah dan entry di dalam ensiklopedi selalu terurut secara alfabetik. Kita juga sering melakukan pengurutan seperti mencatat
nomor hp teman berdasarkan nama, menyusun tumpukan koran berdasarkan tanggal, mengantre berdasarkan waktu kedatangan, dan sebagainya. Data terurut memiliki beberapa keuntungan.
Selain mempercepat waktu pencarian, dari data yang terurut kita dapat langsung memperoleh nilia maksimum dan nilai minimum. Untuk data numerik yang terurut menurun, nilai maksimum adalah
elemen yang pertama array, dan nilai minimum adalah elemen terakhir. Dan sebaliknya untuk data numerik yang terurut menaik. Penguruttan dikatakan stabil jika ada dua atau lebih data yang sama
atau identik tetap pada urutan yang sama setelah pengurutan. Misalnya di dalam sekelompok data integer berikut terdapat ni
lai 9 diberi tanda petik „, „‟ ,‟‟‟ untuk mengidentifikasi urutannya. 38, 70, 9‟, 10, 9‟‟, 3, 8, 61, 9‟‟‟
Jika metode pengurutan menghasilkan susunan data seperti berikut: 3, 8, 9‟, 9‟‟, 9‟‟‟, 10, 38, 61, 70
Maka pengurutan dikatakan stabil dan metode pengurutannya disebut metode stabil. Tetapi
jika suatu metode pengurutan menghasilkan susunan data terurut seperti di bawah ini: 3, 8, 9‟‟, 9‟, 9‟‟‟, 10, 38, 61, 70
Maka pengurutan dan metodenya kita katakan tidak stabil.
Adanya kebutuhan terhadap proses pengurutan memunculkan bermacam-macam algoritma pengurutan. Banyak algoritma pengurutan yang telah ditemukan. Hal ini menunjukkan bahwa
persoalan pengurutan adalah persoalan yang kaya dengan solusi algoritmik. Salah satu algoritma pengururtan adalah algoritma gelembung bubble sort dan algoritma seleksi selection sort.