कैसे सर्वश्रेष्ठ लागू करने के लिए मूलांक क्रमबद्ध कार्यक्रम सी में?



यह लेख आपको रेडिक्स सॉर्ट प्रोग्राम इन सी से परिचित कराएगा और बेहतर समझ के लिए प्रोग्रामेटिक प्रदर्शन का पालन करेगा।

यह लेख आपको मूलांक सॉर्ट का परिचय देगा और आपको बताएगा कि मूलांक सॉर्ट को कैसे लागू किया जाए सी। में निम्नलिखित बिंदुओं को इस लेख में शामिल किया जाएगा,

तो चलिए हम शुरू करते हैं,





सरल शब्दों में, छँटाई का अर्थ है दिए गए तत्वों को व्यवस्थित क्रम में व्यवस्थित करना। छांटना अधिकांश एल्गोरिदम में किया जाता है क्योंकि यह खोज को आसान बनाता है जो अंततः एल्गोरिथ्म को कुशल बनाता है। इस ब्लॉग में हम सामान्य रूप से उपयोग किए जाने वाले एक से अधिक एल्गोरिदम यानि मूलांक सॉर्ट को समझेंगे।

मूलांक सॉर्ट एक गैर-तुलनात्मक पूर्णांक छँटाई एल्गोरिथ्म है। यह कम से कम महत्वपूर्ण अंकों (यानी दाईं ओर मौजूद अंक) से शुरू होकर सबसे महत्वपूर्ण अंक (यानी बाईं ओर मौजूद अंक) तक अंकों की छंटनी करके डिजिट करता है। मूलांक क्रमांक सॉर्ट करने के लिए सबरूटीन के रूप में गणना प्रकार का उपयोग करता है।
तुलना आधारित सॉर्टिंग एल्गोरिथ्म (जैसे हीप सॉर्ट, क्विक सॉर्ट, मर्ज सॉर्ट) के लिए निचली सीमा & ओमेगा (nLogn) है, और वे इसे nLogn से बेहतर नहीं बना सकते। यदि हम गिनती के प्रकार के बारे में बात करते हैं, तो यह O (n + k) समय की जटिलता के साथ एक रेखीय समय छांटने वाला एल्गोरिथ्म है, जहां सीमा 1 से k के बीच होती है। अब, गिनती के प्रकार के साथ समस्या है, यह ओ (एन 2) लेता है जब तत्व 1 से एन 2 तक होते हैं।



वस्तुओं की एक सरणी बनाएँ जावा

तो, रैखिक समय में 1 से n2 तक के तत्वों के साथ एक सरणी को सॉर्ट करने के लिए, हमें मूलांक सॉर्ट की आवश्यकता है। मूलांक सॉर्ट अंकों की संख्या को कम से कम महत्वपूर्ण अंकों से शुरू करके सबसे महत्वपूर्ण अंक तक क्रमबद्ध करता है। मूलांक क्रमांक सॉर्ट करने के लिए सबरूटीन के रूप में गणना प्रकार का उपयोग करता है।

रेडिक्स सॉर्ट प्रोग्राम इन सी पर इस लेख के साथ आगे बढ़ते हुए,

मूलांक सॉर्ट एल्गोरिथ्म

दाएँ में मौजूद कम से कम महत्वपूर्ण अंक से शुरू होने वाले सभी अंकों के लिए निम्न चरणों का पालन करें, बाईं ओर मौजूद सबसे महत्वपूर्ण अंकों की ओर बढ़ते हुए।



वर्तमान अंक के अनुसार गणना प्रकार का उपयोग करके तत्वों को क्रमबद्ध करें।
उदाहरण:

मूल सरणी:
140, 65, 85, 110, 612, 54, 12, 86

न्यूनतम महत्वपूर्ण अंक को छाँटना अर्थात् एक स्थान पर, देता है

140, 110, 612, 12, 54, 65, 85, 86

नोट: जैसा कि ६१२ १२ से पहले दिखाई देता है, और छँटाई केवल एक अंक के लिए की जाती है, इस प्रकार ६१२ इस पुनरावृत्ति के बाद १२ से पहले दिखाई देता है।

कैसे स्ट्रिंग अजगर रिवर्स करने के लिए

अगले अंक के आधार पर छाँटकर, अर्थात् 10 वें स्थान पर, देता है:

110, 612, 12, 140, 54, 65, 85, 86

सबसे महत्वपूर्ण अंक के आधार पर छंटनी, अर्थात् 100 वें स्थान पर मौजूद है:

012, 054, 065, 085, 086, 110, 140, 612

रेडिक्स सॉर्ट प्रोग्राम इन सी पर इस लेख के साथ आगे बढ़ते हुए,

रेडिक्स सॉर्ट प्रोग्राम इन सी

पहले रेडिक्स सॉर्ट फ़ंक्शन को देखें

जावा में उदाहरण चर का उदाहरण

मूलांक क्रमांक:

void radixsort (int array [], int n) {// सबसे बड़ी संख्या जानने के लिए अंको की अधिकतम संख्या int m = getMax (array, n) int dig // काउंटिंग सॉर्ट हर अंक के लिए किया जाता है (dig = 1) m / dig> 0 dig * = 10) countSort (सरणी, n, खुदाई)}

रेडिक्स सॉर्ट प्रोग्राम इन सी पर इस लेख के साथ आगे बढ़ते हुए,

सॉर्ट फ़ंक्शन को गिनें:

शून्य काउंटर्स (इंट सरणी [], इंट एन, इंट डी) {इंट आउटपुट [एन] इंट आई, काउंट [10] = {0} // काउंट इनिंग्स की गिनती काउंट [] के लिए (i = 0 i)= 0 i--) {आउटपुट [गिनती [(सरणी [i] / खुदाई)% 10] - 1] = सरणी [i] गिनती [(सरणी [i] / खुदाई)% 10] -} // कॉपी गिरफ्तार करने के लिए आउटपुट सरणी [], ताकि गिरफ्तार [] अब // में (i = 0 i) के लिए वर्तमान अंक के अनुसार क्रमबद्ध संख्याएं हैं

आगे बढ़ते हुए, मूलांक को लागू करने के लिए C प्रोग्राम लिखें।

उदाहरण:

#include // सबसे बड़ी संख्या को खोजने के लिए फ़ंक्शन int getMax (int array [], int n) {int max = array [0] int i for (i = 1 i max) max = array [i] वापसी अधिकतम} // काउंट सॉर्ट के लिए फंक्शन void countSort (int array [], int n, int dig) {int output [n] int i, count [10] = {0} // काउंट में घटनाओं का काउंट [] के लिए (i = 0) मैं= 0 i--) {आउटपुट [गिनती [(सरणी [i] / खुदाई)% 10] - 1] = सरणी [i] गिनती [(सरणी [i] / खुदाई)% 10] -} // कॉपी आउटपुट एरे को गिराने के लिए [], ताकि गिरफ्तारी [] अब // में वर्तमान अंक के अनुसार सॉर्ट किए गए नंबर हैं (i = 0 i 0 dig * = 10) countSort (array, n, dig)} // फंक्शन टू प्रिंट ऐरे शून्य प्रिंट (int arr [], int n) {int i for (i = 0 i)

आउटपुट

आउटपुट- C- एडुर्का में रेडिक्स सॉर्ट प्रोग्राम

अब उपरोक्त कार्यक्रम को क्रियान्वित करने के बाद आप रेडिक्स सॉर्ट प्रोग्राम इन सी को समझ गए होंगे। इस प्रकार हम ‘क्विकसॉर्ट इन जावा’ के इस लेख के अंत में आ गए हैं। आप और अधिक जानने के लिए चाहते हैं, तो बाहर की जाँच करें एक विश्वसनीय ऑनलाइन शिक्षण कंपनी। एडुर्का के जावा जे 2 ईई और एसओए प्रशिक्षण और प्रमाणन पाठ्यक्रम आपको हाइबरनेट और स्प्रिंग जैसे विभिन्न जावा फ्रेमवर्क के साथ कोर और उन्नत जावा अवधारणाओं दोनों के लिए प्रशिक्षित करने के लिए डिज़ाइन किया गया है।

क्या आप हमसे कोई प्रश्न पूछना चाहते हैं? कृपया इस ब्लॉग के टिप्पणी अनुभाग में इसका उल्लेख करें और हम जल्द से जल्द आपके पास वापस आ जाएंगे।