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

पायथन में heapq का उपयोग करके दो सॉर्टेड ऐरे को मर्ज करना


इस खंड में हम देखेंगे कि heapq मॉड्यूल का उपयोग करके पायथन में दो सॉर्टेड सूचियों को कैसे मर्ज किया जा सकता है। उदाहरण के लिए, यदि list1 = [10, 20, 30, 40] और list2 = [100, 200, 300, 400, 500], तो मर्ज करने के बाद यह list3 = [10, 20, 30, 40, 100, 200, 300, 400, 500] लौटाएगा।

इस कार्य को करने के लिए, हम heapq मॉड्यूल का उपयोग करेंगे। यह मॉड्यूल पायथन के साथ स्टैंडर्ड लाइब्रेरी मॉड्यूल के रूप में आता है। इसलिए इसका उपयोग करने से पहले हमें इसे इम्पोर्ट करना होगा।

import heapq

heapq मॉड्यूल के कुछ गुण हैं। ये नीचे दिए गए हैं -

  • heapq.heapify(iterable) - इटरेबल डेटासेट को हीप डेटा स्ट्रक्चर में बदलने के लिए उपयोग किया जाता है।
  • heapq.heappush(heap, element) - इस मेथड का उपयोग हीप में तत्व डालने के लिए किया जाता है। उसके बाद पूरे हीप स्ट्रक्चर को रि-हीप करें।
  • heapq.heappop(heap) - इस मेथड का उपयोग हीप के शीर्ष से तत्व को लौटाने और हटाने के लिए किया जाता है और शेष तत्वों पर हीपिफाई करता है।
  • heapq.heappushpop(heap, element) - इस मेथड का उपयोग एक स्टेटमेंट में तत्व डालने और पॉप करने के लिए किया जाता है।
  • heapq.heapreplace(heap, element) - इस मेथड का उपयोग एक स्टेटमेंट में तत्व डालने और पॉप करने के लिए किया जाता है। यह हीप के रूट से तत्व को हटाता है, फिर तत्व को हीप में डालता है।
  • heapq.nlargest(n, iterable, key=None) - इस मेथड का उपयोग हीप से n सबसे बड़े तत्व लौटाने के लिए किया जाता है।
  • heapq.nsmallest(n, iterable, key=None) - इस मेथड का उपयोग हीप से n सबसे छोटे तत्व लौटाने के लिए किया जाता है।

उदाहरण कोड

import heapq
first_list = [45, 12, 63, 95, 74, 21, 20, 15, 36]
second_list = [42, 13, 69, 54, 15]
first_list = sorted(first_list)
second_list = sorted(second_list)
print('First sorted list: ' + str(first_list))
print('Second sorted list: ' + str(second_list))
final_list = list(heapq.merge(first_list, second_list))
print('The final list: ' + str(final_list))

आउटपुट

First sorted list: [12, 15, 20, 21, 36, 45, 63, 74, 95]
Second sorted list: [13, 15, 42, 54, 69]
The final list: [12, 13, 15, 15, 20, 21, 36, 42, 45, 54, 63, 69, 74, 95]

  1. पायथन में मर्ज सॉर्ट समझाया गया पायथन में मर्ज सॉर्ट समझाया गया

    मर्ज सॉर्ट एक सॉर्टिंग तकनीक है। यह एक कुशल सॉर्टिंग एल्गोरिथम है जिसकी टाइम कॉम्प्लेक्सिटी O(n log n) होती है जहां n सॉर्ट की जाने वाली ऐरे की लंबाई है। मर्ज सॉर्ट एक एल्गोरिथम है जो डिवाइड एंड कंकर पैराडाइम का पालन करता है। यह लगातार ऐरे को दो समान हिस्सों में विभाजित करता है। बाद में यह सिंगल एल

  1. पायथन में GET विधि का उपयोग करके जानकारी पास करना पायथन में GET विधि का उपयोग करके जानकारी पास करना

    GET विधि एन्कोडेड उपयोगकर्ता जानकारी को पेज अनुरोध में जोड़कर भेजती है। पेज और एन्कोडेड जानकारी ? कैरेक्टर द्वारा अलग की जाती है जैसे -https://www.test.com/cgi-bin/hello.py?key1=value1&key2=value2GET विधि ब्राउज़र से वेब सर्वर पर जानकारी पास करने की डिफ़ॉल्ट विधि है और यह एक लंबी स्ट्रिंग उत्पन्

  1. - पायथन का उपयोग करके दो मैट्रिक्स कैसे जोड़ें

    समस्या विवरण पायथन में 2 मैट्रिक्स को जोड़ने का सबसे आसान तरीका है उन पर लूप चलाना और तत्वों को एक-एक करके जोड़ना। उदाहरण X = [[1,2,3], [4,5,6], [7,8,9]] Y = [[9,8,7], [6,5,4], [3,2,1]] result = [[0,0,0], [0,0,0], [0,0,0]] for i in range(len(X)): for j in range(len(X[0])): result[i][j]