কম্পিউটার

প্রদত্ত লিঙ্কযুক্ত তালিকার দৈর্ঘ্য পাইথনে জোড় বা বিজোড় কিনা তা পরীক্ষা করুন


ধরুন আমাদের একটি লিঙ্কযুক্ত তালিকা আছে, আমাদের পরীক্ষা করতে হবে এর দৈর্ঘ্য বিজোড় নাকি জোড়।

সুতরাং, যদি ইনপুট head =[5,8,7,4,3,6,4,5,8] এর মত হয়, তাহলে আউটপুট হবে বিজোড়।

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

  • যদিও হেড নাল না হয় এবং হেডের পরের অংশ নাল না হয়, do
    • হেড :=মাথার পাশের পাশে
  • হেড যদি শূন্য হয়, তাহলে
    • রিটার্ন "Even"
  • রিটার্ন "বিজোড়"

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

উদাহরণ কোড

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
      
def solve(head):
   while head != None and head.next != None: 
      head = head.next.next
           
   if head == None:
      return "Even"
   return "Odd"

head = make_list([5,8,7,4,3,6,4,5,8])
print(solve(head))

ইনপুট

[5,8,7,4,3,6,4,5,8]

আউটপুট

Odd

  1. বিজোড় দৈর্ঘ্যের চক্র পাইথনে গ্রাফে আছে কি না তা পরীক্ষা করার জন্য প্রোগ্রাম

  2. পাইথনে লিংকড লিস্ট সাইকেল

  3. পাইথনে লিঙ্কযুক্ত তালিকা বিপরীত করুন

  4. ভাজকের সংখ্যা জোড় বা বিজোড় কিনা তা পরীক্ষা করার জন্য পাইথন প্রোগ্রাম