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