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

पायथन प्रोग्राम: लिंक्ड सूची का मध्य तत्व प्रिंट करना


जब लिंक्ड सूची का मध्य तत्व प्रिंट करने की आवश्यकता होती है, तो 'print_middle_val' नामक एक विधि परिभाषित की जाती है। यह विधि लिंक्ड सूची को पैरामीटर के रूप में लेती है और मध्य तत्व प्राप्त करती है।

उदाहरण

class Node:
    def __init__(self, data):
        self.data = data
        self.next = None

class LinkedList_structure:
    def __init__(self):
        self.head = None
        self.last_node = None
    
    def add_vals(self, data):
        if self.last_node is None:
            self.head = Node(data)
            self.last_node = self.head
        else:
            self.last_node.next = Node(data)
            self.last_node = self.last_node.next

def print_middle_val(my_list):
    curr = my_list.head
    my_len = 0
    while curr:
        curr = curr.next
        my_len = my_len + 1
    curr = my_list.head
    for i in range((my_len - 1)//2):
        curr = curr.next
    if curr:
        if my_len % 2 == 0:
            print('दो मध्य तत्व {} और {} हैं'.format(curr.data, curr.next.data))
        else:
            print('मध्य तत्व {} है।'.format(curr.data))
    else:
        print('सूची खाली है')

my_instance = LinkedList_structure()
my_list = input('लिंक्ड सूची के तत्व दर्ज करें... ').split()
for elem in my_list:
    my_instance.add_vals(int(elem))

print_middle_val(my_instance)

आउटपुट

लिंक्ड सूची के तत्व दर्ज करें... 56 23 78 99 34 11
दो मध्य तत्व 78 और 99 हैं

व्याख्या

  • 'Node' क्लास बनाई गई है।

  • आवश्यक विशेषताओं के साथ एक अन्य 'LinkedList_structure' क्लास बनाई गई है।

  • इसमें एक 'init' फ़ंक्शन है जो पहले तत्व, यानी 'head' को 'None' इनिशियलाइज़ करने के लिए उपयोग किया जाता है।

  • 'add_vals' नामक एक विधि परिभाषित की गई है, जो स्टैक में मान जोड़ने में मदद करती है।

  • 'print_middle_val' नामक एक अन्य विधि परिभाषित की गई है, जो लिंक्ड सूची के मध्य मान को कंसोल पर प्रदर्शित करने में मदद करती है।

  • 'LinkedList_structure' का एक इंस्टेंस बनाया जाता है।

  • तत्वों को लिंक्ड सूची में जोड़ा जाता है।

  • तत्वों को कंसोल पर प्रदर्शित किया जाता है।

  • 'print_middle_val' विधि को इस लिंक्ड सूची पर कॉल किया जाता है।

  • आउटपुट कंसोल पर प्रदर्शित किया जाता है।


  1. - पायथन प्रोग्राम: सर्कुलर लिंक्ड लिस्ट में एलिमेंट सर्च करना

    सर्कुलर लिंक्ड लिस्ट में किसी एलिमेंट को सर्च करने के लिए, हमें एक Node क्लास बनाने की आवश्यकता होती है। इस क्लास में दो एट्रिब्यूट्स होते हैं: नोड में मौजूद डेटा और लिंक्ड लिस्ट के अगले नोड का एक्सेस। सर्कुलर लिंक्ड लिस्ट की संरचना सर्कुलर लिंक्ड लिस्ट में, हेड (head) और रियर (rear) एक-दूसरे से जु

  1. - पायथन में सिंगली लिंक्ड लिस्ट के मध्य नोड को खोजने का प्रोग्राम

    मान लीजिए हमारे पास एक सिंगली लिंक्ड लिस्ट नोड है, हमें मध्य नोड का मान ढूंढना है। और जब दो मध्य नोड होते हैं, तो हम दूसरा वाला वापस करेंगे। हमें इसे सिंगल पास में हल करने का प्रयास करना है। उदाहरण के लिए, यदि इनपुट [5,9,6,4,8,2,1,4,5,2] है, तो आउटपुट 2 होगा। इसे हल करने के लिए हम निम्न चरणों का पा

  1. - पायथन में लिंक्ड लिस्ट में नोड हटाएं

    मान लीजिए हमारे पास कुछ तत्वों के साथ एक लिंक्ड लिस्ट है। हमारा कार्य एक फंक्शन लिखना है जो दिए गए नोड को लिस्ट से हटा देगा। यदि लिस्ट 1 → 3 → 5 → 7 → 9 जैसी है, और 3 को हटाने के बाद, यह 1 → 5 → 7 → 9 हो जाएगी। मान लीजिए हमारे पास node पॉइंटर है जो हटाए जाने वाले नोड को इंगित करता है, हमें नोड को ह