जब एक सर्कुलर लिंक्ड सूची बनाने की आवश्यकता होती है जिसमें 'एन' नोड्स होते हैं, और नोड्स की संख्या की गणना प्राप्त करते हैं, तो 'नोड' वर्ग बनाने की आवश्यकता होती है। सर्कुलर सूची में डेटा तत्वों को प्रदर्शित करने के लिए, एक और विधि परिभाषित की जा सकती है, जो डेटा प्रदर्शित करेगी। इस वर्ग में, दो विशेषताएँ हैं, डेटा जो नोड में मौजूद है, और लिंक्ड सूची के अगले नोड तक पहुँच है। एक वृत्ताकार लिंक्ड सूची में, सिर और पिछला भाग एक दूसरे से सटे होते हैं।
वे एक मंडली बनाने के लिए जुड़े हुए हैं, और अंतिम नोड में 'NULL' मान नहीं है।
एक और 'linked_list' वर्ग बनाने की जरूरत है जिसमें एक प्रारंभिक कार्य होगा, और नोड के प्रमुख को 'कोई नहीं' के लिए प्रारंभ किया जाएगा।
नीचे उसी के लिए एक प्रदर्शन है -
उदाहरण
class Node: def __init__(self, my_data): self.data = my_data self.next = None def add_data(head_ref,my_data): ptr_1 = Node(0) temp = head_ref ptr_1.data = my_data ptr_1.next = head_ref if (head_ref != None) : while (temp.next != head_ref): temp = temp.next temp.next = ptr_1 else: ptr_1.next = ptr_1 head_ref = ptr_1 return head_ref def count_node(head): temp = head result = 0 if (head != None) : while True : temp = temp.next result = result + 1 if (temp == head): break return result if __name__=='__main__': head = None head = add_data(head, 78) head = add_data(head, 56) head = add_data(head, 22) print("Elements are added to list") print("The number of nodes are : ") print(count_node(head))
आउटपुट
Elements are added to list The number of nodes are : 3
स्पष्टीकरण
- 'नोड' वर्ग बनाया गया है।
- आवश्यक विशेषताओं के साथ एक और 'linked_list' वर्ग बनाया गया है।
- 'add_data' नाम की एक अन्य विधि परिभाषित की गई है, जिसका उपयोग सर्कुलर लिंक्ड सूची में डेटा जोड़ने के लिए किया जाता है।
- 'print_it' नामक एक अन्य विधि को परिभाषित किया गया है जिसका उपयोग कंसोल पर लिंक की गई सूची डेटा प्रदर्शित करने के लिए किया जाता है।
- 'linked_list' वर्ग का एक ऑब्जेक्ट बनाया जाता है, और उस पर डेटा जोड़ने के तरीकों को बुलाया जाता है।
- यह 'print_it' पद्धति का उपयोग करके कंसोल पर प्रदर्शित होता है।