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

पायथन में डेक

डेक मूल रूप से स्टैक और कतार संरचना का एक सामान्यीकरण है, जहां इसे बाएं से दाएं प्रारंभ किया जाता है। यह एक डेक बनाने के लिए सूची वस्तु का उपयोग करता है। यह पॉपिंग और संलग्न करने के लिए ओ (1) समय जटिलता प्रदान करता है।

Dequeis एक मानक पुस्तकालय वर्ग है, जो संग्रह . में स्थित है मॉड्यूल।

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

import collections

इस खंड में हम Deque वर्ग के कुछ कार्य देखेंगे

Deque पर संलग्न कार्य

दो अलग-अलग प्रकार के परिशिष्ट हैं। एपेंड () विधि का उपयोग कतार के दाहिने छोर पर तत्वों को जोड़ने के लिए किया जाता है, और परिशिष्ट () विधि का उपयोग कतार के बाईं ओर तत्व को जोड़ने के लिए किया जाता है।

उदाहरण कोड

import collections as col
#Insert some elements into the queue at first
my_deque = col.deque('124dfre')
   print('Dequeue: ' + str(my_deque))
      #insert x at right and B at left
      my_deque.append('x')
      my_deque.appendleft('B')
   print('Dequeue after appending: ' + str(my_deque))

आउटपुट

Dequeue: deque(['1', '2', '4', 'd', 'f', 'r', 'e'])
Dequeue after appending: deque(['B', '1', '2', '4', 'd', 'f', 'r', 'e', 'x'])

द पॉपिंग डेक पर काम करता है

संलग्न करने की तरह, दो अलग-अलग प्रकार के पॉप फ़ंक्शन हैं। पॉप () विधि का उपयोग कतार से सबसे दाहिने तत्व को हटाने और वापस करने के लिए किया जाता है, और पॉपलेफ्ट () विधि का उपयोग कतार से सबसे बाएं तत्व को हटाने और वापस करने के लिए किया जाता है।

उदाहरण कोड

import collections as col
#Insert some elements into the queue at first
my_deque = col.deque('124dfre')
   print('Dequeue: ' + str(my_deque))
      #delete item from right and left
      item = my_deque.pop()
   print('Popped Item: ' + str(item))
      item = my_deque.popleft()
   print('Popped Item: ' + str(item))
print('Dequeue after pop operations: ' + str(my_deque))

आउटपुट

Dequeue: deque(['1', '2', '4', 'd', 'f', 'r', 'e'])
Popped Item: e
Popped Item: 1
Dequeue after pop operations: deque(['2', '4', 'd', 'f', 'r'])

Deque में आइटम संबंधित कार्य

Deque में कुछ फंक्शन का प्रयोग वस्तुओं से संबंधित जानकारी प्राप्त करने के लिए किया जाता है। इंडेक्स (), गिनती () इत्यादि जैसे कुछ कार्य हैं। इंडेक्स विधि का उपयोग पहली घटना की अनुक्रमणिका को प्राप्त करने के लिए किया जाता है। जब तत्व के साथ कोई तर्क पारित नहीं किया जाता है, तो यह पूरी सूची का चयन करेगा, जब एक निश्चित सीमा निर्दिष्ट की जाती है, तो यह उस सीमा में सूचकांक की जांच करती है। दूसरी ओर, गिनती () विधि डेक में किसी आइटम की आवृत्ति की गणना करती है।

उदाहरण कोड

import collections as col
#Insert some elements into the queue at first
my_deque = col.deque('AABCDDEFD')
   print('Dequeue: ' + str(my_deque))
      #find the index of D
   print('Index of D:' + str(my_deque.index('D')))
print('Index of D in range 5 to 8 is: ' + str(my_deque.index('D', 5, 8)))
#Count the number of occurrences
   print('Occurrences of A: ' + str(my_deque.count('A')))
print('Occurrences of D: ' + str(my_deque.count('D')))

आउटपुट

Dequeue: deque(['A', 'A', 'B', 'C', 'D', 'D', 'E', 'F', 'D'])
Index of D:4
Index of D in range 5 to 8 is: 5
Occurrences of A: 2
Occurrences of D: 3

डेक में इन्सर्ट () और रिमूव () फंक्शन

हमने पहले से ही तत्वों को सम्मिलित करने और हटाने के लिए डेक में एपेंड और पॉप फ़ंक्शन को देखा है। सम्मिलन और विलोपन से संबंधित अन्य दो विधियाँ हैं। किसी संख्या को सम्मिलित करने के लिए सम्मिलित () विधि का उपयोग किया जाता है। इस मामले में हम डालने के लिए सूचकांक प्रदान कर सकते हैं। तो एक निर्दिष्ट स्थान पर, आइटम डाला जा सकता है। और किसी तत्व की पहली घटना को हटाने के लिए निकालें () विधि का उपयोग किया जाता है।

उदाहरण कोड

import collections as col
#Insert some elements into the queue at first
my_deque = col.deque('AABCDDEFD')
print('Dequeue: ' + str(my_deque))
#Insert letter G and H into the position 5, 7 respectively
my_deque.insert(5, 'G')
my_deque.insert(7, 'H')
print('Dequeue after inserting: ' + str(my_deque))
#Delete first occurrence of letter D
my_deque.remove('D')
print('Dequeue after removing: ' + str(my_deque))

आउटपुट

Dequeue: deque(['A', 'A', 'B', 'C', 'D', 'D', 'E', 'F', 'D'])
Dequeue after inserting: deque(['A', 'A', 'B', 'C', 'D', 'G', 'D', 'H', 'E', 'F', 'D'])
Dequeue after removing: deque(['A', 'A', 'B', 'C', 'G', 'D', 'H', 'E', 'F', 'D'])

Deque में फ़ंक्शन का विस्तार करना

Deque में कई तत्वों को जोड़ने के लिए विस्तृत कार्यों का उपयोग किया जाता है। हम कई मान प्रदान करने के लिए सूची, टुपल्स जैसे संग्रह का उपयोग कर सकते हैं। दो प्रकार के विस्तार कार्य हैं। विस्तार () विधि का उपयोग तत्वों को दाईं ओर जोड़ने के लिए किया जाता है, यह दोहराए जाने वाले एपेंड () फ़ंक्शन के समान है। और एक्सटेंडलेफ्ट () मेथड का इस्तेमाल लेफ्ट में एलिमेंट जोड़ने के लिए किया जाता है, यह रिपीटिटिव एपेंडलेफ्ट () फंक्शन के समान है।

उदाहरण कोड

import collections as col
#Insert some elements into the queue at first
my_deque = col.deque('AABCDDEFD')
print('Dequeue: ' + str(my_deque))
#Extend by adding 1, 3, 5, 7 to the right and x, y, z to the left
my_deque.extend([1, 3, 5, 7])
my_deque.extendleft(['x', 'y', 'z'])
print('Dequeue after Extending: ' + str(my_deque))

आउटपुट

Dequeue: deque(['A', 'A', 'B', 'C', 'D', 'D', 'E', 'F', 'D'])
Dequeue after Extending: deque(['z', 'y', 'x', 'A', 'A', 'B', 'C', 'D', 'D', 'E', 'F', 'D', 1, 3, 5, 7])

Deque में कार्यों को उलटना और घुमाना

हम रिवर्स () विधि का उपयोग करके डीक्यूअर के अनुक्रम को उलट सकते हैं। रोटेट () नामक एक और विधि है। रोटेट विधि का उपयोग करके, डेक को तर्क के रूप में निर्दिष्ट संख्या के साथ घुमाया जा सकता है। यदि तर्क सकारात्मक है, तो यह दाएँ घूमता है, और ऋणात्मक संख्या के लिए इसे बाएँ घुमाया जाएगा।

उदाहरण कोड

import collections as col
#Insert some elements into the queue at first
my_deque = col.deque('AABCDDEFD')
print('Dequeue: ' + str(my_deque))
my_deque.reverse()
print('Deque after Reversing:' + str(my_deque))
#rotate to the right, 3 elements
my_deque.rotate(3)
print('Deque after rotating:' + str(my_deque))

आउटपुट

Dequeue: deque(['A', 'A', 'B', 'C', 'D', 'D', 'E', 'F', 'D'])
Deque after Reversing:deque(['D', 'F', 'E', 'D', 'D', 'C', 'B', 'A', 'A'])
Deque after rotating:deque(['B', 'A', 'A', 'D', 'F', 'E', 'D', 'D', 'C'])

  1. issuperset () पायथन में

    इस लेख में, हम पायथन में issuperset() और विभिन्न क्षेत्रों में इसके कार्यान्वयन के बारे में जानेंगे। यह विधि बूलियन ट्रू लौटाती है यदि एक सेट बी के सभी तत्वों में सभी तत्व सेट ए होते हैं जो एक तर्क के रूप में पारित होते हैं और यदि ए के सभी तत्व बी में मौजूद नहीं होते हैं तो झूठा रिटर्न देता है। इस

  1. पायथन में डेक

    डेक मूल रूप से स्टैक और कतार संरचना का एक सामान्यीकरण है, जहां इसे बाएं से दाएं प्रारंभ किया जाता है। यह एक डेक बनाने के लिए सूची वस्तु का उपयोग करता है। यह पॉपिंग और संलग्न करने के लिए ओ (1) समय जटिलता प्रदान करता है। Dequeis एक मानक पुस्तकालय वर्ग है, जो संग्रह . में स्थित है मॉड्यूल। इसका उपयोग

  1. पायथन कंटेनर डेटाटाइप

    संग्रह में कुछ कंटेनर डेटाटाइप हैं, जो अजगर के सामान्य उद्देश्य के लिए निर्मित कंटेनर जैसे कि तानाशाही, सूची, सेट आदि के विकल्प हैं। कुछ कंटेनर हैं - Sr.No. कंटेनर और विवरण 1 namedtuple() नाम फ़ील्ड के साथ टपल उपवर्ग बनाने के लिए उपयोग किया जाता है 2 डेक सूची प्रकार डेटा का उपयोग कर कतार