K1 · Modul 07
Pengurutan dasar dan pembuktiannya
47 langkah singkat, dari mudah sampai tantangan.
Level 1
Kenal
Level 2
Paham
Level 3
Terapkan
Level 4
Tantangan
Level 5
Pendalaman
Intinya
- Hasil pengurutan harus terurut dan merupakan permutasi masukan; untuk catatan sering ditambah syarat stabil.
- Selection, insertion, dan bubble sort semuanya Θ(n²) di kasus terburuk; insertion sort cepat untuk data yang hampir terurut.
- Banyak inversi menentukan kerja algoritma tukar-tetangga, jadi semuanya butuh Ω(n²); untuk lebih cepat, elemen harus berpindah jauh.
- Pengurut stabil memungkinkan pengurutan bertingkat;
sortedPython dijamin stabil dankey=dihitung sekali per elemen.
Sebelum mulai
±4 jam.
Modul ini memakai materi di bawah. Belum yakin? Ulas dulu bagian yang disebut.
Hasil belajar: menyatakan spesifikasi pengurutan; menulis selection, insertion, dan bubble sort serta membuktikannya dengan invarian; menghitung perbandingan dan pemindahan untuk kasus terbaik, terburuk, dan rata-rata; menjelaskan inversi dan batas Ω(n²) untuk tukar-tetangga; memakai kestabilan untuk pengurutan bertingkat; serta memakai sorted, key=, dan reverse= dengan sadar.
Proyek: Kurir Makmur langkah 7: urutkan_sisip (kontrak Proyek Kurir §3), insertion sort stabil menurut p[kunci] lalu id, tanpa mengubah list asal.
Istilah di modul ini (16)
Ketuk istilah untuk melihat penjelasannya. Di materi, istilah bergaris titik membuka kartu yang sama. Semua istilah course
Bahan modul
Semua kode, latihan, dan data modul ini dalam satu zip, untuk dijalankan di laptop atau Google Colab.
- 33 contoh kode
- 9 berkas latihan + tes
- 1 berkas data
Lihat isi zip
- BACA-DULU.txt
- contoh_k1_07_25.py
- contoh_k1_07_49.py
- contoh_k1_07_79.py
- contoh_k1_07_113.py
- contoh_k1_07_151.py
- contoh_k1_07_201.py
- contoh_k1_07_339.py
- contoh_k1_07_378.py
- contoh_k1_07_454.py
- contoh_k1_07_503.py
- contoh_k1_07_686.py
- contoh_k1_07_717.py
- contoh_k1_07_860.py
- contoh_k1_07_954.py
- contoh_k1_07_1012.py
- contoh_k1_07_1035.py
- contoh_k1_07_1068.py
- contoh_k1_07_1328.py
- contoh_k1_07_1372.py
- contoh_k1_07_1397.py
- contoh_k1_07_1450.py
- contoh_k1_07_1723.py
- contoh_k1_07_1778.py
- contoh_k1_07_1802.py
- contoh_k1_07_1826.py
- contoh_k1_07_1850.py
- contoh_k1_07_1874.py
- contoh_k1_07_1899.py
- contoh_k1_07_2128.py
- contoh_k1_07_2289.py
- contoh_k1_07_2315.py
- contoh_k1_07_2352.py
- contoh_k1_07_2369.py
- test_k1_07_1.py
- test_k1_07_7.py
- test_k1_07_2.py
- test_k1_07_4.py
- test_k1_07_5.py
- test_k1_07_3.py
- test_k1_07_8.py
- test_k1_07_6.py
- test_k1_07_9.py
- peta.json