Thuật toán

Counting sort: đếm thay vì so sánh, nên đi vòng qua được giới hạn n log n

Giới hạn n log n chỉ áp cho thuật toán so sánh

2026-08-2106 slide1 phút đọcGiải thích
Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6
vuốt, bấm thanh trên, hoặc phím mũi tên01 / 06

Cùng một bài, đọc bằng chữ. Nhanh hơn và tìm lại được bằng Ctrl+F.

Sắp điểm của 1000 sinh viên

  1. Tạo ôĐiểm từ 0 đến 10, nên tạo 11 ô đếm
  2. ĐếmGặp một điểm thì tăng ô tương ứng lên một
  3. Rải lạiĐi từ ô 0 đến ô 10, ghi ra theo thứ tự
  4. XongKhông so hai sinh viên nào với nhau

k là độ rộng khoảng giá trị

k không phải số phần tử, cũng không phải số giá trị thực sự xuất hiện. Nó là giá trị lớn nhất trừ nhỏ nhất rồi cộng một. Điểm 0 đến 10 cho k bằng 11.

Công thức

Thời gian chạy là O(n + k)

Vì sao đi vòng qua được n log n

Giới hạn n log n là một định lý, nhưng nó chỉ áp cho thuật toán sắp xếp bằng cách so sánh các phần tử. Counting sort không so sánh, nó dùng thẳng giá trị để đếm.

Counting sort được gì, mất gì

Ưu điểm

O(n + k), nhanh hơn khi khoảng giá trị hẹp

Ổn định nếu cài đúng, dùng được cho radix sort

Không đệ quy, code ngắn và đi thẳng

Nhược điểm

Khoá phải là số nguyên, hoặc ánh xạ được

Tốn O(k) bộ nhớ, k rộng là hỏng

Không sắp được theo thứ tự tự định nghĩa

Hết loạt bảy thuật toán sắp xếp

Lưu cả loạt lại, khi nào quên thì mở bài bản đồ ra xem trước.

techtipstechtipsvnthuattoanhoclaptrinhlaptrinh
Đọc tiếp

Bài khác cùng chủ đề

Slide bìa: Tin công nghệ 29/08: mô hình mở chạy chip Trung Quốc và Meta dàn xếp 18 tỉ đô09

Tin công nghệ 29/08: mô hình mở chạy chip Trung Quốc và Meta dàn xếp 18 tỉ đô

Tin2′ đọc31.08
Slide bìa: Next.js vá hai lỗ hổng critical: nâng lên 16.3.3 hoặc 15.5.24, và ảnh AVIF bị tắt07

Next.js vá hai lỗ hổng critical: nâng lên 16.3.3 hoặc 15.5.24, và ảnh AVIF bị tắt

Tin1′ đọc31.08
Slide bìa: 4 trong 6 tuyến cáp biển đang lỗi: vì sao npm install của bạn chậm hẳn07

4 trong 6 tuyến cáp biển đang lỗi: vì sao npm install của bạn chậm hẳn

Tin1′ đọc31.08
Slide bìa: GitHub trending tuần này: archify +18.103 sao, và repo thứ hai không chạy được gì09

GitHub trending tuần này: archify +18.103 sao, và repo thứ hai không chạy được gì

Tin2′ đọc31.08

Mỗi ngày một bài mới.

Mẹo, giải thích và tin công nghệ cho sinh viên và dev mới đi làm. Một người viết, đăng đều.

Bài cũng được đăng lên TikTok, ở dạng slide.

TikTok@techtipsvn