algoritma pemrograman

Pengurutan (Sorting)

 [type="toc"]

Belajar Sorting Bersama Laras Wiranti

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. 

Posting Komentar

Contact form