কম্পিউটার

পাইথনে লিঙ্ক করা তালিকার দৈর্ঘ্য


ধরুন আমাদের একটি এককভাবে লিঙ্কযুক্ত তালিকা আছে, আমাদের তার দৈর্ঘ্য খুঁজে বের করতে হবে। লিঙ্ক করা তালিকার পরের এবং ভ্যাল ক্ষেত্র রয়েছে৷

সুতরাং, যদি ইনপুটটি [2 -> 4 -> 5 -> 7 -> 8 -> 9 -> 3] এর মত হয়, তাহলে আউটপুট হবে 7।

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • গণনা :=0
  • যদিও নোডটি নাল নয়, do
    • গণনা :=গণনা + 1
    • নোড:=নোডের পাশে
  • রিটার্ন গণনা

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

উদাহরণ

class ListNode:
   def __init__(self, data, next = None):
      self.val = data
      self.next = next
def make_list(elements):
   head = ListNode(elements[0])
   for element in elements[1:]:
      ptr = head
      while ptr.next:
         ptr = ptr.next
         ptr.next = ListNode(element)
   return head
class Solution:
   def solve(self, node):
      count = 0
      while node:
         count +=1
         node=node.next
      return count
ob = Solution()
head = make_list([2,4,5,7,8,9,3])
print(ob.solve(head))

ইনপুট

[2,4,5,7,8,9,3]

আউটপুট

7

  1. লিংকড লিস্ট C++ এ লাফ দেয়

  2. পাইথনে লিঙ্ক করা তালিকায় নোড অদলবদল করার জন্য প্রোগ্রাম

  3. Python প্রোগ্রাম K দৈর্ঘ্যের সারি বাদ দিতে

  4. পাইথনে লিঙ্ক করা তালিকা থেকে m নোডের পরে n নোড মুছে ফেলার প্রোগ্রাম