nếu chúng ta có một danh sách gồm số, chúng ta cần log n bitnlogn
Không: nếu chúng ta có một danh sách các số từ đến 2 k - 1 , chúng ta cần k bit. Không có mối quan hệ giữa k và log n nói chung.02k−1kklogn
Nếu các số đều khác nhau, thì và radix sắp xếp trên các số riêng biệt do đó có độ phức tạp thời gian là Ω ( n log n ) . Nói chung, độ phức tạp của loại cơ số là Θ ( nlogn≥kΩ(nlogn) trong đó n là số phần tử cần sắp xếp và k là số bit trong mỗi phần tử.Θ(nk)nk
Để nói rằng độ phức tạp của sắp xếp cơ số là có nghĩa là lấy kích thước bit cố định cho các số. Điều này ngụ ý rằng đối với n đủ lớn , sẽ có nhiều giá trị trùng lặp.O(n)n
Có một định lý chung rằng một phương pháp sắp xếp danh sách hoặc mảng hoạt động bằng cách so sánh hai phần tử tại một thời điểm không thể chạy nhanh hơn trong trường hợp xấu nhất. Radix sort không hoạt động bằng cách so sánh các yếu tố, nhưng cùng một phương pháp chứng minh hoạt động. Radix sort là một quá trình quyết định để xác định hoán vị nào sẽ áp dụng cho mảng; có n ! hoán vị của mảng và sắp xếp cơ số có các quyết định nhị phân, nghĩa là nó quyết định có trao đổi hai phần tử hay không ở mỗi giai đoạn. Sau m quyết định nhị phân, sắp xếp cơ số có thể quyết định giữa 2 m hoán vị. Để đạt đến n ! hoán vị có thể, nó là cần thiết màΘ(nlogn)n!m2mn! .m≥log(n!)=Θ(nlogn)
Một giả định trong bằng chứng mà tôi không viết ra ở trên là thuật toán phải hoạt động trong trường hợp khi các yếu tố khác biệt. Nếu được biết một tiên nghiệm rằng các yếu tố không hoàn toàn khác biệt, thì số lượng hoán vị tiềm năng ít hơn đầy đủ ! . Khi sắp xếp các số k -bit, chỉ có thể có n phần tử riêng biệt khi n ≤ 2 k ; trong trường hợp đó, độ phức tạp của loại cơ số thực sự là Ω ( n log n ) . Đối với giá trị lớn hơn của n , thì phải có va chạm, điều này giải thích cách sắp xếp cơ số có thể có một sự phức tạp đó là ít hơn Θ (n!knn≤2kΩ(nlogn)n khi n > 2 k .Θ(nlogn)n>2k