Mã giả
Bài học 4 trên 9 trong khóa học Sắp xếp nhanh: chuỗi DSA của Coddy.
quickSort(array):
if length(array) <= 1:
return array
pivot = last element of array
less = elements (except pivot) that are < pivot
rest = elements (except pivot) that are >= pivot
return quickSort(less) + [pivot] + quickSort(rest)Cách thuật toán này thể hiện ý tưởng:
- pivot là phần tử được dùng để so sánh mọi phần tử khác. Ở đây, nó luôn là phần tử cuối cùng.
- less chứa mọi phần tử nhỏ hơn pivot; rest chứa các phần tử còn lại.
- Sắp xếp less và rest bằng đệ quy rồi đặt pivot vào giữa sẽ tạo ra một mảng đã được sắp xếp hoàn chỉnh, vì mọi phần tử trong less nằm trước pivot và mọi phần tử trong rest nằm sau pivot.
Tự làm thử
Bài học này không có thử thách code.
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Sắp xếp nhanh: chuỗi DSA
Tự luyện tập: Trình biên dịch C online