CONTOH ALGORITMA SORTING
Pengertian Algoritma Bubble Sort
Algoritma Bubble Sort adalah teknik pengurutan data yang menukar dua data yang berdekatan jika urutan datanya salah. Untuk Algoritma ini dapat mengurutkan data dari besar ke kecil (ascending) dan dari kecil ke besar (descending). Algoritma ini tidak cocok untuk kumpulan data yang besar karena kompleksitas algoritma ini adalah 0 () dimana n adalah jumlah elemen.
Jadi, Algoritma bubble sort adalah proses pengurutan yang secara bertahap memindahkan data ke lokasi yang benar. Oleh karena itu, algoritma ini disebut “bubble” atau dalam bahasa Indonesia disebut gelembung. Fungsi dari algoritma ini adalah untuk mengurutkan data dari yang terkecil sampai yang terbesar (ascending) atau sebaliknya (descending).
Konsep Algoritma Bubble Sort
- Algoritma dimulai dari elemen tertua.
- Bandingkan 2 elemen pertama dari daftar. Jika elemen pertama lebih besar dari yang kedua atau sebaliknya (dalam urutan menaik atau menurun), swap dilakukan.
- Langkah 2 dan 3 diulang untuk elemen kedua dan ketiga, dan seterusnya sampai akhir elemen.
- Jika tidak ada lagi pertukaran elemen, daftar elemen diurutkan.
- Setiap pasangan data: x[j] dengan x[j 1], untuk setiap j = 1, …, n-1 harus memenuhi urutan, yaitu urutkan:
Ascending: x[j] < x[j+1]
Descending: x[j] > x[j+1]
Proses Algoritma Bubble Sort
Algoritma bubble sort memiliki dua jenis proses, yaitu Ascending (pengurutan data dari terkecil ke terbesar) dan Decreasing proses ascending (pengurutan data dari terbesar ke terkecil). Apa perbedaan antara proses bottom-up dan top-down? Lihat pembahasan di bawah ini:
1. Proses Ascending
Kami akan memberikan contoh agar Anda memahami proses ascending dalam algoritma bubble sort. Berikut adalah rangkaian angka yang kita lakukan misalnya: [5, 12, 3, 19, 1, 47].
Ini adalah langkah bubble sort dengan metode ascending:
2. Proses Descending
Kami akan memberikan contoh yang mirip dengan satu di atas agar Anda memahami proses descending dalam algoritma bubble sort, yang merupakan urutan angka: [5, 12, 3, 19, 1, 47] Ini adalah langkah pengurutan bubble sort dengan metode descending:
Kompleksitas Algoritma Bubble Sort
Kompleksitas algoritma Bubble sort dapat dilihat dari beberapa jenis kasus, yaitu kasus terburuk, kasus rata-rata lapangan dan kasus terbaik.
1. Kondisi Best Case
Dalam hal ini, data yang diurutkan dicadangkan. Sehingga perbandingan hanya dilakukan (n-1) kali, dengan satu kali iterasi. Perbandingan hanya dilakukan untuk mengecek urutan data. Contohnya dapat dilihat pada susunan data “1 2 3 4” di bawah ini:
Di atas proses dapat dilihat bahwa tidak ada pertukaran lokasi data. Oleh karena itu, iterasi berikutnya tidak dijalankan. Perbandingan faktor dilakukan sebanyak tiga kali. Proses perbandingan pada kondisi ini hanya dilakukan (n-1) kali. Persamaan Big-O yang diperoleh dari proses ini adalah O(n).
2. Kondisi Worst-Case
Dalam hal ini, data terkecil berada di bagian bawah tabel. Contohnya dapat dilihat pada pengurutan data “4 3 2 1” di bawah ini:
lebih kecil bergerak ke awal langkah. Dengan kata lain, untuk memindahkan data yang lebih kecil dari urutan keempat ke urutan pertama membutuhkan tiga iterasi, ditambah satu untuk memverifikasi data. Sehingga banyaknya proses pada kondisi terburuk dapat dirumuskan sebagai berikut:
0 Komentar:
Posting Komentar
Berlangganan Posting Komentar [Atom]
<< Beranda