[type="toc"]
Konsep Algoritma Sorting
Sorting merupakan proses menyusun kembali sekumpulan data acak ke dalam urutan tertentu, baik secara ascending (meningkat A-Z/ 1-10) dan descending (menurun Z-A/ 10-1).
[type="alert" style="success"] Baca Juga: Materi Pembelajaran Sort [/type]
Jenis Algoritma Sorting
- Buble Sort
konsep : membandingkan elemen berdekatan, lalu menukar jika salah urut. Proses diulang hingga tidak ada lagi pertukaran.
kelebihan : sangat mudah dipahami dan diimplementasikan
kekurangan : tidak efisien untuk data besar
contoh kasus : cocok untuk daftar kecil seperti daftar nilai kelas dengan jumlah siswa sedikit.
visualisasi : data [5,3,8,4]
langkah 1 : bandingkan 5 dan 3 : tukar (3,5,8,4)
langkah 2 : bandingkan 5 dan 8 : tetap (3,5,8,4)
langkah 3 : bandingkan 8 dan 4 : tukar (3,5,4,8)
ulangi sampai elemen terurut menjadi (3,4,5,8)
- Selection Sort
konsep : Cari elemen dengan nilai terkecil (atau terbesar) di seluruh array, lalu tukar nilainya dengan elemen pada indeks paling depan yang belum terurut.
kelebihan : sederhana, jumlah pertukaran relatif sedikit
kekurangan : tetap lambat untuk data besar
contoh kasus : berguna saat jumlah pertukaran harus diminimalkan, misalnya pada sistem dengan biaya tinggi untuk operasi swap.
- Insertion Sort
konsep : Ambil satu elemen secara berurutan, lalu siapkan elemen tersebut pada posisi yang tepat diantara elemen- elemen yang sudah terurut sebelumnya.
kelebihan : efektif untuk data kecil atau hampir terurut.
kekurangan : kurang efisien untuk data besar
contoh kasus : cocok untuk mengurutkan data yang masuk secara bertahap (misalnya daftar nilai ujian)
- merge sort
konsep : membagi data menjadi dua bagian, mengurutkan masing masing bagian, lalu menggabungkannya kembali secara berurut.
kelebihan : stabil, efisien untuk data besar
kekurangan : membutuhkan memori tambahan untuk proses penggabungan
contoh kasus : cocok untuk dataset besar yang membutuhkan kestabilan hasil
- quick sort
konsep : memilih sebuah pivot, lalu membagi data menjadi dua bagian : lebih kecil dari pivot dan lebih besar dari pivot. Proses diulang secara rekursif.
Kelebihan : sangat cepat untuk data besar
kekurangan : performa menurun jika pemilihan pivot buruk k
contoh kasus : digunakan luas dalam sistem nyata karena efisiensi tinggi, misalnya sorting pada database.
- heap sort
konsep : menggunakan struktur data heap untuk mengurutkan elemen
kelebihan : kompleksitas waktu konsisten, tidak membutuhkan memori tambahan besar.
kekurangan : tidak stabil
contoh kasus : cocok untuk sistem dengan keterbatasan memori tambahan.