jika kita memiliki daftar nomor kita perlu bitlog nnlogn
Tidak: jika kita memiliki daftar angka antara dan , kita perlu bit. Tidak ada hubungan antara dan secara umum.2 k - 1 k k log n02k−1kklogn
Jika angkanya berbeda, maka , dan radix sort pada angka yang berbeda karena itu memiliki kompleksitas waktu . Secara umum, kompleksitas sortir radix adalah mana adalah jumlah elemen untuk disortir dan adalah jumlah bit dalam setiap elemen.Ω ( n log n ) Θ ( nlogn≥kΩ(nlogn)n kΘ(nk)nk
Mengatakan bahwa kompleksitas jenis radix adalah berarti mengambil ukuran bit yang tetap untuk angka-angkanya. Ini menyiratkan bahwa untuk cukup besar , akan ada banyak nilai duplikat.nO(n)n
Ada teorema umum bahwa metode pengurutan larik atau daftar yang berfungsi dengan membandingkan dua elemen sekaligus tidak dapat berjalan lebih cepat dari dalam kasus terburuk. Urutan Radix tidak bekerja dengan membandingkan elemen, tetapi metode bukti yang sama berfungsi. Sortir radix adalah proses pengambilan keputusan untuk menentukan permutasi yang diterapkan pada array; adapermutasi array, dan radix sort mengambil keputusan biner, yaitu memutuskan apakah akan menukar dua elemen atau tidak pada setiap tahap. Setelah keputusan biner, radix sort dapat memutuskan antara permutasi. Untuk mencapaikemungkinan permutasi, perlu bahwa .n ! m 2 m n ! m ≥ log ( n ! ) = Θ ( n log n )Θ(nlogn)n!m2mn!m≥log(n!)=Θ(nlogn)
Asumsi dalam bukti bahwa saya tidak menulis di atas adalah bahwa algoritma harus bekerja dalam kasus ketika elemen berbeda. Jika diketahui apriori bahwa unsur-unsurnya tidak semuanya berbeda, maka jumlah permutasi potensial kurang dari penuh. Saat mengurutkan angka -bit, hanya mungkin untuk memiliki elemen yang berbeda ketika ; dalam hal ini, kompleksitas jenis radix memang . Untuk nilai lebih besar , harus ada tabrakan, yang menjelaskan bagaimana radix sort dapat memiliki kompleksitas yang kurang dari ketika .k n n ≤ 2 k Ω ( n log n ) n Θ ( n log n ) n > 2 kn!knn≤2kΩ(nlogn)nΘ(nlogn)n>2k