यदि हमारे पास संख्याओं की सूची है, तो हमें बिट्स की आवश्यकता होगीलॉग एनnलॉगn
नहीं: यदि हमारे पास और बीच संख्याओं की सूची है , तो हमें बिट्स की आवश्यकता है । सामान्य रूप से और बीच कोई संबंध नहीं है ।2 k - 1 k k लॉग एन02क- 1kklogn
यदि संख्याएँ सभी अलग-अलग हैं, तो अलग-अलग संख्याओं पर , और मूलांक सॉर्ट करें, इसीलिए समय जटिलता है । सामान्य तौर पर, मूलांक की जटिलता तरह है जहां प्रकार और करने के लिए तत्वों की संख्या है प्रत्येक तत्व में बिट्स की संख्या है।Ω ( एन लॉग इन करें n ) Θ ( nlogn≥kΩ(nlogn)n केΘ(nk)nk
यह कहने के लिए कि मूलांक छँटनी की जटिलता अर्थ है संख्याओं के लिए निश्चित बिट आकार लेना। इसका तात्पर्य है कि बड़े पर्याप्त , कई डुप्लिकेट मान होंगे।एनO(n)n
एक सामान्य प्रमेय है कि एक सरणी या सूची सॉर्टिंग विधि जो एक समय में दो तत्वों की तुलना करके काम करती है , सबसे खराब स्थिति में से अधिक तेजी से नहीं चल सकती है । रेडिक्स सॉर्ट तत्वों की तुलना करके काम नहीं करता है, लेकिन एक ही प्रूफ विधि काम करती है। रेडिक्स सॉर्ट एक निर्णय प्रक्रिया है जो यह निर्धारित करने के लिए है कि किस क्रम को सरणी पर लागू करना है; वहाँएरे की क्रमपरिवर्तन, और रेडिक्स की तरह द्विआधारी निर्णय लेता है, अर्थात यह तय करता है कि प्रत्येक चरण में दो तत्वों को स्वैप करना है या नहीं। बाइनरी निर्णयों के बाद , रेडिक्स सॉर्ट क्रमपरिवर्तन के बीच तय कर सकता है । तक पहुँचने के लिएसंभव क्रमपरिवर्तन, यह आवश्यक है कि ।n ! म 2 म N ! मी ≥ लॉग ( एन ! ) = Θ ( एन लॉग एन )Θ(nlogn)n!m2mn!m≥log(n!)=Θ(nlogn)
इस प्रमाण में एक धारणा कि मैंने ऊपर नहीं लिखा है कि एल्गोरिथ्म मामले में काम करना चाहिए जब तत्व अलग-अलग हों। यदि यह एक प्राथमिकता के रूप में जाना जाता है कि तत्व सभी अलग-अलग नहीं हैं, तो संभावित क्रमपरिवर्तन की संख्या पूर्ण से कम है ! । जब छँटाई कश्मीर -बिट संख्या, यह केवल संभव है n विशिष्ट तत्वों जब n ≤ 2 कश्मीर ; उस स्थिति में, मूलांक तरह की जटिलता वास्तव में है Ω ( एन लॉग इन करें n ) । N के बड़े मूल्यों के लिए , टकराव होना चाहिए, जो बताता है कि कैसे मूलांक छंटाई की जटिलता हो सकती है जो Θ ( से कम है )n!knn≤2kΩ(nlogn)n जब n > 2 k ।Θ(nlogn)n>2k