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

पायथन में सम्मिलन प्रकार क्या है?

इंसर्शन सॉर्ट एक सरणी को सॉर्ट करने का सरल तरीका है। इस तकनीक में, सरणी को वस्तुतः क्रमबद्ध और बिना छांटे हुए भाग में विभाजित किया जाता है। क्रमबद्ध भाग में से एक तत्व को चुना जाता है और क्रमबद्ध भाग में सही स्थिति में रखा जाता है।

  • सरणी तत्वों को 1 से n तक ट्रैवर्स किया जाता है।

  • यदि स्थिति i पर सरणी तत्व अपने पूर्ववर्ती से बड़ा है, तो इसे स्थानांतरित करने की आवश्यकता नहीं है।

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

उदाहरण

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

4 6 1 7 2 5

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

इंडेक्स 1 पर -

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

4 6 1 7 2 5

इंडेक्स 2 पर -

4 6 1 7 2 5

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

4 6 1 7 2 5

इंडेक्स 3 पर -

1 4 6 7 2 5

इंडेक्स 4 पर -

1 4 6 7 2 5

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

1 2 4 6 7 5

इंडेक्स 5 पर -

1 2 4 6 7 5

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

1 2 4 5 6 7

इसलिए, हम क्रमबद्ध सरणी प्राप्त करते हैं।

इंसर्शन सॉर्ट 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 &lit; 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. बाइनरी इंसर्शन सॉर्ट के लिए पायथन प्रोग्राम

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

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

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

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

    इस लेख में, हम पायथन 3.x में इंसर्शन सॉर्ट के कार्यान्वयन के बारे में जानेंगे। या पहले। एल्गोरिदम 1. Iterate over the input elements by growing the sorted array at each iteration. 2. Compare the current element with the largest value available in the sorted array. 3. If the current element is greate