Tahun lalu, saya membaca makalah yang fantastis tentang "Mekanika Kuantum untuk Taman Kanak-Kanak" . Itu bukan kertas mudah.
Sekarang, saya ingin tahu bagaimana menjelaskan quicksort dengan kata-kata sesederhana mungkin. Bagaimana saya bisa membuktikan (atau paling tidak gelombang tangan) bahwa kompleksitas rata-rata adalah , dan apa kasus terbaik dan terburuk, untuk kelas taman kanak-kanak? Atau setidaknya di sekolah dasar?
algorithms
education
algorithm-analysis
didactics
sorting
Jonaprieto
sumber
sumber
Jawaban:
Pada intinya, Quicksort adalah ini:
Saya pikir setiap anak berusia 4 tahun di planet ini dapat melakukan 1 dan 2. Rekursi ini mungkin membutuhkan sedikit penjelasan, tetapi seharusnya tidak terlalu sulit bagi mereka.
Adapun kompleksitasnya, kasus terburuk seharusnya cukup mudah. Pertimbangkan saja array yang sudah diurutkan:
Cukup mudah untuk melihat (dan membuktikan) bahwa ini .12n2
Saya tidak terbiasa dengan bukti rata-rata, jadi saya tidak bisa membuat saran untuk itu. Anda bisa mengatakan bahwa dalam array yang tidak disortir dengan panjang probabilitas untuk memilih item terkecil atau terbesar adalah 2l , jadi ...?2n
sumber
Quicksort sebenarnya cukup mudah untuk dipahami, jika mereka memahami penghitungan dasar dan pembagian dengan 2. Membuat banyak kartu flash X, beri nomor 1 - X, dan kocok. Maka inilah penjelasannya:
Selamat. Anda baru saja mengajar banyak anak-anak prinsip-prinsip dasar dari algoritma quicksort adaptif! Anda bisa sedikit lebih dalam dari itu tergantung pada kematangan mental, tetapi melangkah lebih jauh dari titik ini membutuhkan pemahaman tentang logika formal.
Sedangkan untuk membuktikan kompleksitasnya, itu lebih sulit. Ini adalah salah satu hal yang memerlukan logika formal, dan mereka harus memahami prinsip dasar notasi O besar. Anda mungkin ingin menunda bagian itu pada awalnya.
sumber
Bagaimana dengan ini?
Ilmu Komputer Unplugged - Algoritma Penyortiran
Itu tidak cukup mencakup semua pertanyaan Anda, tapi ini awal yang baik.
Sumber daya lebih banyak tentang topik ini ditautkan di sini .
Mereka juga menyediakan video yang menjelaskan algoritma pengurutan (termasuk quicksort) di sini . Video ini sangat membantu memahami perbedaan antara berbagai algoritma penyortiran untuk anak-anak muda.
sumber
Lihat keindahan grafis demo kecil ini .
.
sumber