Programa de Python para verificar si la longitud de la lista vinculada dada es par o impar

Dada una lista enlazada, la tarea es hacer una función que verifique si la longitud de la lista enlazada es par o impar. 
Ejemplos:

Input : 1->2->3->4->NULL
Output : Even

Input : 1->2->3->4->5->NULL
Output : Odd

Método 1: Cuente los códigos linealmente 
. Atraviese toda la lista enlazada y siga contando el número de Nodes. Tan pronto como finaliza el ciclo, podemos verificar si el conteo es par o impar. Puede intentarlo usted mismo.
Método 2: Escalonamiento de 2 Nodes a la vez  
Enfoque:

1. Take a pointer and move that pointer two nodes at a time
2. At the end, if the pointer is NULL then length is Even, else Odd.

Python3

# Python program to check length 
# of a given linklist 
# Defining structure 
class Node: 
    def __init__(self, d):
        self.data = d
        self.next = None
        self.head = None
  
    # Function to check the length 
    # of linklist 
    def LinkedListLength(self):
        while (self.head != None and 
               self.head.next != None): 
            self.head = self.head.next.next
              
        if(self.head == None):
            return 0
        return 1
      
    # Push function 
    def push(self, info):
          
    # Allocating node 
        node = Node(info) 
  
    # Next of new node to head 
        node.next = (self.head) 
  
    # head points to new node 
        (self.head) = node 
  
# Driver code 
head = Node(0) 
      
# Adding elements to Linked List 
head.push(4) 
head.push(5) 
head.push(7) 
head.push(2) 
head.push(9) 
head.push(6) 
head.push(1) 
head.push(2) 
head.push(0) 
head.push(5) 
head.push(5) 
check = head.LinkedListLength()
      
# Checking for length of 
# linklist 
if(check == 0):
    print("Even")
else:
    print("Odd")
# This code is contributed by Prerna saini

Producción:  

Odd

Complejidad de tiempo: O(n) 
Complejidad de espacio: O(1)

¡ Consulte el artículo completo sobre Comprobar si la longitud de la lista vinculada dada es par o impar para obtener más detalles!

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *