检查给定链表的长度在Python中是偶数还是奇数

假设我们有一个链表,我们必须检查它的长度是奇数还是偶数。

因此,如果输入就像head = [5,8,7,4,3,6,4,5,8],那么输出将是奇数。

为了解决这个问题,我们将遵循以下步骤-

  • 当head不为null并且head的next不为null时,执行

    • 头:=头的下一个

  • 如果head为null,则

    • 返回“偶数”

  • 返回“奇数”

让我们看下面的实现以更好地理解-

范例程式码

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 andhead.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

猜你喜欢