Quick Sort Algorithm in Hindi | क्विक सॉर्ट एल्गोरिदम क्या है?
क्विक सॉर्ट एल्गोरिदम क्या है? (Quick Sort Algorithm in Hindi)
क्विक सॉर्ट (Quick Sort) एक कुशल और लोकप्रिय सॉर्टिंग एल्गोरिदम है जो डिवाइड एंड कॉन्कर (Divide and Conquer) तकनीक पर आधारित है। यह एल्गोरिदम औसतन O(n log n) समय जटिलता (Time Complexity) प्रदान करता है और अक्सर प्रैक्टिकल उपयोगों में Merge Sort से तेज़ होता है।
क्विक सॉर्ट एल्गोरिदम की प्रक्रिया (Quick Sort Algorithm Process)
क्विक सॉर्ट निम्नलिखित चरणों में कार्य करता है:
- चरण 1 (Pivot Selection): किसी भी तत्व को पिवट (Pivot) के रूप में चुनें।
- चरण 2 (Partitioning): सूची को दो भागों में विभाजित करें, जहाँ एक भाग में छोटे और दूसरे भाग में बड़े तत्व हों।
- चरण 3 (Recursion): प्रत्येक भाग को पुनरावृत्त रूप से सॉर्ट करें।
क्विक सॉर्ट का छद्मकोड (Pseudocode of Quick Sort)
QuickSort(arr, low, high) if low < high: pivotIndex = Partition(arr, low, high) QuickSort(arr, low, pivotIndex - 1) QuickSort(arr, pivotIndex + 1, high)
क्विक सॉर्ट एल्गोरिदम का उदाहरण (Example of Quick Sort Algorithm)
माना कि हमें निम्नलिखित सूची को सॉर्ट करना है:
arr = [50, 30, 20, 10, 60, 70]
क्विक सॉर्ट निम्नलिखित चरणों में कार्य करेगा:
चरण | पिवट | बायाँ भाग | दायाँ भाग | संयोजन |
---|---|---|---|---|
1 | 50 | [30, 20, 10] | [60, 70] | [30, 20, 10, 50, 60, 70] |
2 | 30 | [20, 10] | [] | [10, 20, 30, 50, 60, 70] |
3 | 20 | [10] | [] | [10, 20, 30, 50, 60, 70] (Final Sorted Array) |
क्विक सॉर्ट की समय जटिलता (Time Complexity of Quick Sort)
- Best Case (सबसे अच्छा केस): O(n log n) – यदि सूची बराबर भागों में विभाजित हो।
- Average Case (औसत केस): O(n log n) – आमतौर पर, पिवट के सही चयन के साथ।
- Worst Case (सबसे खराब केस): O(n²) – यदि प्रत्येक बार सबसे छोटा या सबसे बड़ा पिवट चुना जाए।
क्विक सॉर्ट बनाम मर्ज सॉर्ट (Quick Sort vs Merge Sort)
विशेषता | क्विक सॉर्ट | मर्ज सॉर्ट |
---|---|---|
समय जटिलता | O(n log n) (औसत केस) | O(n log n) (हमेशा) |
मेमोरी उपयोग | इन-प्लेस एल्गोरिदम (O(log n) स्टैक स्पेस) | O(n) अतिरिक्त स्थान |
तेज़ी | प्रैक्टिकल उपयोग में तेज़ | लिंक्ड लिस्ट में बेहतर |
क्विक सॉर्ट के लाभ (Advantages of Quick Sort)
- यह आमतौर पर Merge Sort से तेज़ होता है।
- कम मेमोरी उपयोग करता है क्योंकि यह इन-प्लेस (In-Place) एल्गोरिदम है।
- व्यवहारिक रूप से प्रभावी और व्यापक रूप से उपयोग किया जाता है।
क्विक सॉर्ट के नुकसान (Disadvantages of Quick Sort)
- Worst Case में इसकी जटिलता O(n²) हो सकती है।
- स्टेबल एल्गोरिदम नहीं है (सम मूल्य वाले तत्वों का क्रम बदल सकता है)।
निष्कर्ष
क्विक सॉर्ट एल्गोरिदम एक शक्तिशाली और तेज़ सॉर्टिंग तकनीक है, जो बड़े डेटा सेट के लिए उपयुक्त है। यह Merge Sort की तुलना में कम मेमोरी का उपयोग करता है और आमतौर पर तेज़ होता है, लेकिन Worst Case में धीमा हो सकता है।
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 | एनपी-कम्प्लीटनेस क्या है?