मान लीजिए कि हमारे पास एक लिंक की गई सूची है, हमें यह जांचना है कि इसकी लंबाई विषम है या सम है।
इसलिए, यदि इनपुट हेड =[5,8,7,4,3,6,4,5,8] जैसा है, तो आउटपुट विषम होगा।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- जबकि सिर शून्य नहीं है और सिर का अगला भाग शून्य नहीं है, करें
- सिर :=अगले सिर के आगे
- अगर सिर खाली है, तो
- "सम" लौटाएं
- वापसी "विषम"
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
उदाहरण कोड
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