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

हीप सॉर्ट के लिए पायथन प्रोग्राम

इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे।

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

यहां हम अधिकतम तत्व को अंत में रखते हैं। यह तब तक दोहराया जाता है जब तक कि सरणी क्रमबद्ध न हो जाए।

आइए अब नीचे दिए गए कार्यान्वयन में समाधान देखें-

उदाहरण

# heapify
def heapify(arr, n, i):
   largest = i # largest value
   l = 2 * i + 1 # left
   r = 2 * i + 2 # right
   # if left child exists
   if l < n and arr[i] < arr[l]:
      largest = l
   # if right child exits
   if r < n and arr[largest] < arr[r]:
      largest = r
   # root
   if largest != i:
      arr[i],arr[largest] = arr[largest],arr[i] # swap
      # root.
      heapify(arr, n, largest)
# sort
def heapSort(arr):
   n = len(arr)
   # maxheap
   for i in range(n, -1, -1):
      heapify(arr, n, i)
   # element extraction
   for i in range(n-1, 0, -1):
      arr[i], arr[0] = arr[0], arr[i] # swap
      heapify(arr, i, 0)
# main
arr = [2,5,3,8,6,5,4,7]
heapSort(arr)
n = len(arr)
print ("Sorted array is")
for i in range(n):
   print (arr[i],end=" ")

आउटपुट

Sorted array is
2 3 4 5 5 6 7 8

हीप सॉर्ट के लिए पायथन प्रोग्राम

सभी चर स्थानीय दायरे में घोषित किए गए हैं और उनके संदर्भ ऊपर की आकृति में देखे गए हैं।

निष्कर्ष

इस लेख में, हमने सीखा है कि कैसे हम हीप सॉर्ट के लिए पायथन प्रोग्राम बना सकते हैं


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

    इस लेख में, हम बबल सॉर्टिंग तकनीक के कार्यान्वयन के बारे में जानेंगे। नीचे दिखाया गया आंकड़ा इस एल्गोरिथम की कार्यप्रणाली को दर्शाता है - दृष्टिकोण पहले तत्व (सूचकांक =0) से शुरू करते हुए, वर्तमान तत्व की तुलना सरणी के अगले तत्व से करें। यदि वर्तमान तत्व सरणी के अगले तत्व से बड़ा है, तो उन्

  1. चयन क्रम के लिए पायथन कार्यक्रम

    इस लेख में, हम Python 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