Computer >> Máy Tính >  >> Lập trình >> Python

Kiểm tra xem độ dài của danh sách liên kết đã cho là Chẵn hay Lẻ trong Python

Giả sử chúng ta có một danh sách được liên kết, chúng ta phải kiểm tra xem độ dài của nó là lẻ hay chẵn.

Vì vậy, nếu đầu vào giống như head =[5,8,7,4,3,6,4,5,8], thì đầu ra sẽ là Lẻ.

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • trong khi phần đầu không rỗng và phần tiếp theo của phần đầu không rỗng, hãy thực hiện
    • head:=next of next of head
  • nếu head rỗng, thì
    • trả về "Even"
  • trả về "Kỳ lạ"

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

Mã mẫu

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))

Đầu vào

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

Đầu ra

Odd