যখন একটি বৃত্তাকার লিঙ্কযুক্ত তালিকা তৈরি করতে হবে যাতে 'N' নোড থাকে এবং নোডের সংখ্যা গণনা করা হয়, তখন একটি 'নোড' ক্লাস তৈরি করতে হবে। বৃত্তাকার তালিকায় ডেটা উপাদানগুলি প্রদর্শন করতে, অন্য একটি পদ্ধতি সংজ্ঞায়িত করা যেতে পারে, যা ডেটা প্রদর্শন করবে। এই ক্লাসে, দুটি বৈশিষ্ট্য রয়েছে, নোডে থাকা ডেটা এবং লিঙ্ক করা তালিকার পরবর্তী নোডে অ্যাক্সেস। একটি বৃত্তাকার লিঙ্কযুক্ত তালিকায়, মাথা এবং পিছনের অংশ একে অপরের সংলগ্ন।
তারা একটি বৃত্ত গঠনের জন্য সংযুক্ত, এবং শেষ নোডে 'NULL' মান নেই৷
আরেকটি 'লিঙ্কড_লিস্ট' ক্লাস তৈরি করতে হবে যার একটি ইনিশিয়ালাইজেশন ফাংশন থাকবে, এবং নোডের হেডটি 'কোনও নয়' এ আরম্ভ করা হবে।
নীচে একই −
এর জন্য একটি প্রদর্শন রয়েছে৷উদাহরণ
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
ব্যাখ্যা
- 'নোড' ক্লাস তৈরি করা হয়েছে।
- প্রয়োজনীয় বৈশিষ্ট্য সহ আরেকটি 'লিঙ্কড_লিস্ট' ক্লাস তৈরি করা হয়েছে।
- 'add_data' নামে আরেকটি পদ্ধতি সংজ্ঞায়িত করা হয়েছে, যা সার্কুলার লিঙ্ক করা তালিকায় ডেটা যোগ করতে ব্যবহৃত হয়।
- 'print_it' নামের আরেকটি পদ্ধতি সংজ্ঞায়িত করা হয়েছে যা কনসোলে লিঙ্ক করা তালিকার ডেটা প্রদর্শন করতে ব্যবহৃত হয়।
- 'লিঙ্কড_লিস্ট' ক্লাসের একটি অবজেক্ট তৈরি করা হয়, এবং ডেটা যোগ করার জন্য পদ্ধতিগুলিকে বলা হয়।
- এটি 'print_it' পদ্ধতি ব্যবহার করে কনসোলে প্রদর্শিত হয়।