Lesson 11 — Sorting trong thực tế
3 module tương tác: (1) cây quyết định chọn thuật toán theo đặc điểm dữ liệu; (2) hybrid sort — xem introsort đổi quicksort → heapsort khi đệ quy sâu, và timsort khai thác run đã sorted; (3) bảng so sánh click để xem chi tiết từng thuật toán.
Module 1 — Cây quyết định: chọn thuật toán nào?
Trả lời lần lượt các câu hỏi (chọn theo thứ tự từ trên xuống) → gợi ý thuật toán phù hợp. Câu rẻ nhất hỏi trước.
1. n có rất nhỏ không (< ~20 phần tử)?
2. Dữ liệu có gần như đã sorted không?
3. Key là integer trong dải nhỏ (k ~ O(n))?
4. Cần ổn định (giữ thứ tự phần tử bằng nhau)?
5. Cần O(1) space + guaranteed O(n log n)?
Chọn câu trả lời để xem gợi ý
Câu hỏi được xét theo thứ tự — câu đầu tiên thỏa sẽ quyết định.
Module 2 — Hybrid sort động
giai đoạn
Bấm "Chạy" để mô phỏng.
Module 3 — Bảng so sánh tương tác
Click một thuật toán để xem chi tiết: time (best/avg/worst), space, stable, in-place, và khi nào dùng.
Chọn một thuật toán ở trên.