Mã giả
Bài học 4 trên 9 trong khóa học Sắp xếp đếm, chuỗi DSA của Coddy.
countingSort(array):
max = largest value in array
count = array of (max + 1) zeros
for each x in array: # count phase
count[x] += 1
result = [] # rebuild phase
for v from 0 to max:
repeat count[v] times:
append v to result
return result- count[v] dùng giá trị
vlàm chỉ số, vì vậy phạm vi giá trị quyết định kích thước của mảng đếm (count array). - Giai đoạn đếm thống kê mọi giá trị chỉ trong một lượt.
- Giai đoạn dựng lại đưa mỗi giá trị vào đúng số lần theo thứ tự tăng dần, tạo ra một mảng đã sắp xếp.
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 đếm, chuỗi DSA
Tự luyện tập: Trình biên dịch C online