Heap sort (Sắp xếp vun đống)
Heap sort dùng max-heap để liên tục lấy phần tử lớn nhất — O(n log n), sắp tại chỗ O(1) bộ nhớ, nhưng không ổn định.
Heap sort dùng max-heap để liên tục lấy phần tử lớn nhất — O(n log n), sắp tại chỗ O(1) bộ nhớ, nhưng không ổn định.
Merge sort dùng chia để trị — cắt đôi, sắp từng nửa rồi trộn lại — đạt O(n log n) ổn định, đánh đổi bằng O(n) bộ nhớ.
Tính ổn định (stable) là gì, vì sao nó quan trọng, và bảng so sánh đầy đủ thời gian/bộ nhớ/ổn định của mọi thuật toán sắp xếp.
Quick sort phân hoạch quanh một pivot — trung bình O(n log n), xấu nhất O(n^2) — và mẹo chọn pivot để né trường hợp xấu.
Ba thuật toán sắp xếp đầu tiên — nổi bọt, chọn, chèn — đều O(n^2) nhưng dạy ta trực giác nền tảng về sắp xếp.
Counting, Radix và Bucket sort không so sánh phần tử với nhau — nhờ đó vượt giới hạn O(n log n), đạt O(n + k) khi khóa là số nguyên dải hẹp.