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

पायथन में मर्ज सॉर्ट की व्याख्या करें

मर्ज सॉर्ट एक सॉर्टिंग तकनीक है। यह एक कुशल छँटाई एल्गोरिथ्म है जिसकी समय जटिलता (n logn .) है ) जहां n क्रमबद्ध करने के लिए सरणी की लंबाई है।

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

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

उदाहरण

पायथन में मर्ज सॉर्ट की व्याख्या करें

बैंगनी बॉक्स और काले तीर सूची को दो हिस्सों में विभाजित करते हुए दिखाते हैं।

हरे बक्से और लाल तीर दो क्रमबद्ध सूचियों के विलय को दिखाते हैं।

मर्ज सॉर्ट लागू करें

सूची को दो हिस्सों में विभाजित करना काफी आसान है और इसे पुनरावर्ती रूप से तब तक किया जाता है जब तक हमारे पास केवल एक तत्व शेष न हो। बाद में विलय की प्रक्रिया की जाती है जो वास्तव में है जहां हम दो क्रमबद्ध सूचियों को एक साथ मिलाने के तर्क को लागू करते हैं।

उदाहरण

मर्ज फ़ंक्शन दो सॉर्ट किए गए सरणियों को मर्ज करने के लिए लेता है। a1 के सबसे सामने वाले तत्व की तुलना a2 के सबसे सामने वाले तत्व से की जाती है। सूची c में दो में से सबसे छोटा जोड़ दिया जाता है और उस सरणी के सूचक को बढ़ा दिया जाता है।

def merge(a1,a2):
   c=[]
   x=0
   y=0
   while(x<len(a1) and y<len(a2)):
      if(a1[x]<a2[y]):
         c.append(a1[x])
         x+=1
      else:
         c.append(a2[y])
         y+=1
   while(x<len(a1)):
      c.append(a1[x])
      x+=1
   while(y<len(a2)):
      c.append(a2[y])
      y+=1
   return c

def mergesort(array):
   if(len(array)==1):
      return array
   mid=(len(array))//2
   a1=mergesort(array[:mid])
   a2=mergesort(array[mid:])
   return merge(a1,a2)
array=[2,3,1,5,4,6,8,10,7,9]
print(mergesort(array))

आउटपुट

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

  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