Merge Sort Algorithm in Hindi | मर्ज सॉर्ट एल्गोरिदम क्या है?
मर्ज सॉर्ट एल्गोरिदम क्या है? (Merge Sort Algorithm in Hindi)
मर्ज सॉर्ट (Merge Sort) एक लोकप्रिय सॉर्टिंग एल्गोरिदम है जो डिवाइड एंड कॉन्कर (Divide and Conquer) तकनीक पर आधारित है। यह एक स्थिर (Stable) और कुशल (Efficient) सॉर्टिंग एल्गोरिदम है जिसका समय जटिलता O(n log n) होती है।
मर्ज सॉर्ट एल्गोरिदम की प्रक्रिया (Merge Sort Algorithm Process)
मर्ज सॉर्ट एल्गोरिदम तीन मुख्य चरणों में काम करता है:
- Divide (विभाजन): सूची (List) को दो भागों में विभाजित करें जब तक कि प्रत्येक भाग एकल तत्व न बन जाए।
- Conquer (समाधान): प्रत्येक भाग को पुनरावृत्त रूप से सॉर्ट करें।
- Merge (संयोजन): छोटे भागों को क्रमबद्ध तरीके से मिलाकर अंतिम सॉर्टेड सूची तैयार करें।
मर्ज सॉर्ट का छद्मकोड (Pseudocode of Merge Sort)
MergeSort(arr, left, right) if left < right: mid = (left + right) / 2 MergeSort(arr, left, mid) MergeSort(arr, mid + 1, right) Merge(arr, left, mid, right)
मर्ज सॉर्ट एल्गोरिदम का उदाहरण (Example of Merge Sort Algorithm)
माना कि हमें निम्नलिखित सूची को सॉर्ट करना है:
arr = [38, 27, 43, 3, 9, 82, 10]
मर्ज सॉर्ट का कार्य इस प्रकार होगा:
चरण | विभाजन | संयोजन |
---|---|---|
1 | [38, 27, 43, 3] और [9, 82, 10] | - |
2 | [38, 27] और [43, 3] | [9, 82] और [10] | - |
3 | [38] और [27] | [43] और [3] | [9] और [82] | [10] | - |
4 | - | [27, 38] | [3, 43] | [9, 82] | [10] |
5 | - | [3, 27, 38, 43] | [9, 10, 82] |
6 | - | [3, 9, 10, 27, 38, 43, 82] (Final Sorted Array) |
मर्ज सॉर्ट की समय जटिलता (Time Complexity of Merge Sort)
- Best Case (सबसे अच्छा केस): O(n log n) – पहले से क्रमबद्ध होने पर भी।
- Average Case (औसत केस): O(n log n) – किसी भी इनपुट के लिए।
- Worst Case (सबसे खराब केस): O(n log n) – सबसे अनियमित क्रम वाले डेटा पर।
मर्ज सॉर्ट बनाम क्विक सॉर्ट (Merge Sort vs Quick Sort)
विशेषता | मर्ज सॉर्ट | क्विक सॉर्ट |
---|---|---|
समय जटिलता | O(n log n) | औसतन O(n log n), सबसे खराब केस O(n²) |
अतिरिक्त मेमोरी | O(n) अतिरिक्त स्थान लेता है | इन-प्लेस एल्गोरिदम (कम मेमोरी उपयोग) |
प्रदर्शन | लिंक्ड लिस्ट में तेज | एरे में तेज |
मर्ज सॉर्ट के लाभ (Advantages of Merge Sort)
- यह स्थिर (Stable) एल्गोरिदम है।
- यह बड़े डेटा सेट के लिए अच्छा प्रदर्शन करता है।
- लिंक्ड लिस्ट के साथ आसानी से काम करता है।
मर्ज सॉर्ट के नुकसान (Disadvantages of Merge Sort)
- यह अतिरिक्त O(n) स्थान का उपयोग करता है।
- छोटे डेटा सेट के लिए क्विक सॉर्ट से धीमा होता है।
निष्कर्ष
मर्ज सॉर्ट एल्गोरिदम एक कुशल और स्थिर सॉर्टिंग तकनीक है, जो बड़े डेटा संरचनाओं के लिए उपयुक्त है। यह क्विक सॉर्ट की तुलना में अधिक मेमोरी का उपयोग करता है, लेकिन इसकी जटिलता हमेशा O(n log n) बनी रहती है।
Related Post
- एल्गोरिथम क्या है? (Algorithms in Hindi) | परिभाषा, प्रकार और महत्व
- Designing Algorithm in ADA | एल्गोरिथम डिज़ाइन की प्रक्रिया और सिद्धांत
- एल्गोरिथम एनालिसिस क्या है? (Algorithm Analysis in Hindi) | परिभाषा, प्रकार और महत्व
- Asymptotic Notation in Hindi | एसिम्प्टोटिक नोटेशन क्या है?
- Divide and Conquer Technique in Hindi | डिवाइड एंड कॉन्कर तकनीक क्या है?
- Binary Search Algorithm in Hindi | बाइनरी सर्च एल्गोरिदम क्या है?
- Merge Sort Algorithm in Hindi | मर्ज सॉर्ट एल्गोरिदम क्या है?
- Quick Sort Algorithm in Hindi | क्विक सॉर्ट एल्गोरिदम क्या है?
- Strassen's Matrix Multiplication Algorithm in Hindi | स्ट्रासेन का मैट्रिक्स गुणा एल्गोरिदम
- Greedy Algorithm in Hindi | ग्रीडी एल्गोरिदम क्या है?
- Optimal Merge Pattern in Hindi | ऑप्टिमल मर्ज पैटर्न क्या है?
- Huffman Coding in Hindi | हफ्मन कोडिंग क्या है?
- Minimum Spanning Tree in Hindi | मिनिमम स्पैनिंग ट्री क्या है?
- Knapsack Problem in Hindi | नैपसैक समस्या क्या है?
- Job Sequencing with Deadlines in Hindi | जॉब सीक्वेंसिंग विथ डेडलाइन्स क्या है?
- Single Source Shortest Path Algorithm in Hindi | सिंगल सोर्स शॉर्टेस्ट पाथ एल्गोरिदम क्या है?
- Dynamic Programming in Hindi | डायनेमिक प्रोग्रामिंग क्या है?
- 0/1 Knapsack Problem using Dynamic Programming in Hindi | 0/1 नैपसैक समस्या डायनेमिक प्रोग्रामिंग द्वारा
- Multistage Graph in Hindi | मल्टीस्टेज ग्राफ क्या है?
- Reliability Design in Hindi | विश्वसनीयता डिज़ाइन क्या है?
- Floyd Warshall Algorithm in Hindi | फ्लॉयड वार्शल एल्गोरिदम क्या है?
- 8 Queen’s Problem in Hindi | 8 क्वीन्स समस्या क्या है?
- Hamiltonian Cycle in Hindi | हैमिल्टोनियन साइकिल क्या है?
- Graph Coloring Problem in Hindi | ग्राफ कलरिंग समस्या क्या है?
- Branch and Bound Method in Hindi | ब्रांच एंड बाउंड विधि क्या है?
- Traveling Salesman Problem in Hindi | ट्रैवलिंग सेल्समैन समस्या क्या है?
- Lower Bound Theory in Hindi | लोअर बाउंड थ्योरी क्या है?
- Parallel Algorithm in Hindi | समानांतर एल्गोरिदम क्या है?
- Height Balanced Tree in Hindi | हाइट बैलेंस्ड ट्री क्या है?
- 2-3 Tree in Hindi | 2-3 ट्री क्या है?
- NP-Completeness in Hindi | एनपी-कम्प्लीटनेस क्या है?