हेल्लो दोस्तों, आपका हमारी इस नई पोस्ट मैं स्वागत है। अब तक हमने Bubble, Selection, Quick और Merge Sort के बारे में विस्तार से जाना। आज हम सोर्टिंग की इस सीरीज को पूरा करेंगे एक बहुत ही आसान और इंट्रेस्टिंग एल्गोरिदम के साथ, जिसका नाम है Insertion Sort।
इस पोस्ट में हमने आपको इन्सर्शन सॉर्ट क्या है? (What is Insertion Sort in Hindi?), यह ताश के पत्तों (Playing Cards) की तरह कैसे काम करता है? और यह छोटे डाटा के लिए सबसे बेस्ट क्यों माना जाता है, इसके बारे मैं विस्तार से बताया है।
अगर आपको Bubble Sort और Selection Sort में कन्फ्यूजन होता है, तो Insertion Sort को पढ़ने के बाद आपको समझ आएगा कि ‘स्मार्ट सोर्टिंग’ क्या होती है।
What is Insertion Sort in Hindi? – इन्सर्शन सॉर्ट क्या है?
Insertion Sort एक सरल सोर्टिंग एल्गोरिदम है जो बिल्कुल वैसे ही काम करता है जैसे हम अपने हाथ में ताश के पत्तों को जमाते (sort करते) हैं।
इस एल्गोरिदम में, array को दो हिस्सों में बांटा जाता है:
- Sorted Part: जो पहले से सही क्रम में है (शुरुआत में इसमें सिर्फ पहला element होता है)।
- Unsorted Part: जिसे हमें उठाकर sorted part में सही जगह पर ‘Insert’ करना है।
हम Unsorted part से एक-एक नंबर उठाते हैं और उसे Sorted part में सही जगह ढूंढकर वहां fit (insert) कर देते हैं। इसीलिए इसका नाम Insertion Sort है।

The “Playing Cards” Analogy – ताश वाला उदाहरण
कल्पना कीजिये कि आप ताश (Cards) खेल रहे हैं।
- शुरुआत में आपके हाथ में कोई पत्ता नहीं है।
- आप टेबल से पहला पत्ता उठाते हैं (माना वह 5 है)।
- फिर आप दूसरा पत्ता उठाते हैं (माना वह 3 है)। आप देखते हैं कि 3, 5 से छोटा है, तो आप 5 को खिसका कर 3 को उसके आगे लगा देते हैं।
- फिर आप अगला पत्ता उठाते हैं और उसे सही जगह घुसा (insert) देते हैं।
बस, कंप्यूटर भी डाटा को ठीक इसी तरह Sort करता है!
How Insertion Sort Works in Hindi? – इन्सर्शन सॉर्ट कैसे काम करता है?
चलिए इसे उसी उदाहरण से समझते हैं जिसका डायग्राम मैंने आपको पहले दिया था। Array: [5, 3, 8, 1, 2]
Step 1:
- पहला element
5पहले से sorted माना जाता है। - हम अगला element
3उठाते हैं। - तुलना करते हैं:
3,5से छोटा है। तो हम5को आगे खिसका देंगे और3को पहले रख देंगे। - Array:
[3, 5, 8, 1, 2]
Step 2:
- अब अगला element
8उठाते हैं। 8,5से बड़ा है। तो इसे अपनी जगह रहने देंगे (No change)।- Array:
[3, 5, 8, 1, 2]
Step 3:
- अब अगला element
1उठाते हैं। 1,8से छोटा है -> 8 खिसका।1,5से छोटा है -> 5 खिसका।1,3से छोटा है -> 3 खिसका।- अब जगह खाली हो गई सबसे आगे, तो
1वहां insert हो जाएगा। - Array:
[1, 3, 5, 8, 2]
Step 4:
- अब आखिरी element
2उठाते हैं। - यह
8,5और3से छोटा है, तो ये सब खिसकेंगे और2अपनी सही जगह (1 के बाद) insert हो जाएगा। - Final Sorted Array:
[1, 2, 3, 5, 8]
Time Complexity Analysis – यह कितना फ़ास्ट है?
Insertion Sort की एक बहुत बड़ी खासियत है जो इसे Bubble और Selection Sort से बेहतर बनाती है।
- Best Case: $O(n)$
- अगर array पहले से ही sorted है, तो इसे कुछ भी नहीं करना पड़ता (सिर्फ एक बार check करना पड़ता है)। यह बहुत fast है।
- Worst Case: $O(n^2)$
- अगर array उल्टा (reverse) sorted है, तो इसे हर element को खिसकाना पड़ेगा।
- Average Case: $O(n^2)$
Space Complexity: $O(1)$ (In-place sorting)।
When to use Insertion Sort in Hindi? – इंसर्शन सॉर्ट का उपयोग कब करें?
भले ही यह Merge Sort जितना fast नहीं है, लेकिन कुछ situations में यह राजा (King) है:
- Small Dataset: जब elements कम हों (10-20), तो यह Quick Sort से भी तेज काम करता है।
- Almost Sorted Data: अगर आपको पता है कि लिस्ट लगभग sorted है (बस 1-2 elements गलत जगह हैं), तो Insertion Sort सबसे बेहतरीन choice है।
- Online Algorithm: जब डाटा धीरे-धीरे आ रहा हो (Live data feed), तो यह डाटा आते ही उसे तुरंत sort कर सकता है।
Conclusion – निष्कर्ष
हमें उम्मीद है कि इस पोस्ट से आपने Insertion Sort in Hindi (ताश वाला लॉजिक) अच्छी तरह समझ लिया होगा। संक्षेप में कहें तो, यह Bubble Sort और Selection Sort से ज्यादा स्मार्ट है क्योंकि यह डाटा के sorted होने पर समय बचाता है (Adaptive Nature)।
अगर आपको यह सीरीज पसंद आई हो तो इसे अपने दोस्तों के साथ शेयर जरूर करें। अब हम अगले पोस्ट में Searching Algorithms (Linear vs Binary) के बारे में बात करेंगे।
FAQs
Q1. Insertion Sort और Bubble Sort में क्या अंतर है?
Ans: Bubble sort में हम elements को बार-बार swap करते हैं, जबकि Insertion sort में हम elements को shift (खिसकाते) हैं और सही जगह पर insert करते हैं।
Q2. क्या Insertion Sort सबसे तेज है?
Ans: नहीं, बड़े डाटा के लिए Quick Sort या Merge Sort तेज हैं। लेकिन बहुत छोटे डाटा (small arrays) के लिए Insertion Sort सबसे तेज हो सकता है।
Q3. Best Case Time Complexity क्या है?
Ans: अगर डाटा पहले से sorted है, तो इसकी Complexity $O(n)$ होती है, जो कि बहुत बेहतरीन है।