Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Python में इंसर्शन सॉर्ट क्या है?


इंसर्शन सॉर्ट ऐरे को सॉर्ट करने की एक सरल विधि है। इस तकनीक में, ऐरे को वर्चुअली सॉर्टेड और अनसॉर्टेड पार्ट में विभाजित किया जाता है। अनसॉर्टेड पार्ट से एक एलिमेंट चुना जाता है और इसे सॉर्टेड पार्ट में सही पोजीशन पर रखा जाता है।

  • ऐरे एलिमेंट्स को 1 से n तक ट्रैवर्स किया जाता है।

  • यदि पोजीशन i पर ऐरे एलिमेंट अपने पूर्ववर्ती से बड़ा है, तो इसे मूव करने की आवश्यकता नहीं है।

  • यदि पोजीशन i पर ऐरे एलिमेंट अपने पूर्ववर्ती से छोटा है, तो इसे तब तक बाएं शिफ्ट करने की आवश्यकता है जब तक कि हम इससे छोटा पूर्ववर्ती न पा लें या ऐरे में लेफ्टमोस्ट पोजीशन पर न पहुंच जाएं।

उदाहरण

हम एक उदाहरण की मदद से उपरोक्त विचार को अधिक स्पष्ट रूप से समझ सकते हैं। मान लीजिए हमारे पास निम्नलिखित ऐरे है -

461725

हमें इंडेक्स 1 से ऐरे को ट्रैवर्स करना शुरू करना होगा (क्योंकि इंडेक्स 0 का कोई पूर्ववर्ती नहीं है)।

इंडेक्स 1 पर -

6 अपने पूर्ववर्ती से बड़ा है, इसलिए कुछ करने की आवश्यकता नहीं है।

461725

इंडेक्स 2 पर -

461725

1 अपने पूर्ववर्ती से छोटा है, इसलिए हमें इसे तब तक बाएं शिफ्ट करना होगा जब तक कि हम इससे छोटा पूर्ववर्ती न पा लें या इंडेक्स 0 पर न पहुंच जाएं। इस मामले में हम इंडेक्स 0 पर पहुंच जाएंगे।

146725

इंडेक्स 3 पर -

146725

इंडेक्स 4 पर -

146725

2 को बाएं शिफ्ट करें, जब तक कि हम 2 से छोटा पूर्ववर्ती न पा लें।

124675

इंडेक्स 5 पर -

124675

5 को बाएं शिफ्ट करें, जब तक कि हम 5 से छोटा पूर्ववर्ती न पा लें।

124567

इस प्रकार, हमें सॉर्टेड ऐरे प्राप्त होता है।

इंसर्शन सॉर्ट O(n^2) समय जटिलता और O(1) स्पेस जटिलता के साथ एक इन-प्लेस सॉर्टिंग एल्गोरिदम है।

उदाहरण

def insertionSort(arr):
    for i in range(1, len(arr)):
        key = arr[i] #get each element
        j = i-1
        while j >= 0 and key < arr[j]: #keep shifting until reaching index 0 or getting an element smaller than key
            arr[j + 1] = arr[j]
            j=j-1
        arr[j + 1] = key

arr = [4,6,1,7,2,5]
insertionSort(arr)
for i in range(len(arr)):
    print (arr[i],end=" ")

आउटपुट

1 2 4 5 6 7

  1. पायथन प्रोग्राम: बाइनरी इन्सर्शन सॉर्ट पायथन प्रोग्राम: बाइनरी इन्सर्शन सॉर्ट

    इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे। समस्या कथन हमें एक सरणी दी गई है, हमें बाइनरी इन्सर्शन सॉर्ट की अवधारणा का उपयोग करके इसे क्रमबद्ध करना है। यहां नाम के अनुसार, हम बाइनरी सर्च की अवधारणा का उपयोग इन्सर्शन सॉर्ट एल्गोरिदम के साथ करते हैं। उदाहरण # सॉर्ट def insertion_sort(arr

  1. पायथन प्रोग्राम में इंसर्शन सॉर्ट पायथन प्रोग्राम में इंसर्शन सॉर्ट

    इस लेख में, हम पायथन 3.x में इंसर्शन सॉर्ट के कार्यान्वयन के बारे में सीखेंगे। या इससे पहले। एल्गोरिदम इनपुट एलिमेंट्स पर इटरेट करें और प्रत्येक इटरेशन में सॉर्टेड ऐरे को बढ़ाएं। वर्तमान एलिमेंट की तुलना सॉर्टेड ऐरे में उपलब्ध सबसे बड़े मान से करें। यदि वर्तमान एलिमेंट बड़ा है, तो यह एलिमेंट को उ

  1. पायथन प्रोग्राम: इंसर्शन सॉर्ट एल्गोरिदम पायथन प्रोग्राम: इंसर्शन सॉर्ट एल्गोरिदम

    इस लेख में, हम पायथन 3.x या उससे पहले के संस्करण में इंसर्शन सॉर्ट के कार्यान्वयन के बारे में जानेंगे।एल्गोरिदम1. प्रत्येक पुनरावृत्ति पर सॉर्टेड सरणी को बढ़ाते हुए इनपुट तत्वों पर पुनरावृति करें।2. वर्तमान तत्व की तुलना सॉर्टेड सरणी में उपलब्ध सबसे बड़े मान से करें।3. यदि वर्तमान तत्व बड़ा है, तो इ