'''
En este ejemplo se muestra una lista enlazada en Python, 
incluyendo clases para los nodos y la lista enlazada,
así como métodos para agregar nodos al inicio y para imprimir la lista.
'''

class Nodo:
    def __init__(self, dato):
        self.dato = dato  # Almacena el dato del nodo.
        self.siguiente = None  # Inicializa el siguiente nodo como None.

class ListaEnlazada:
    def __init__(self):
        self.cabeza = None  # Inicializa la cabeza de la lista como None.

    def agregar_al_inicio(self, dato):
        nuevo_nodo = Nodo(dato)  # Crea un nuevo nodo con el dato proporcionado.
        nuevo_nodo.siguiente = self.cabeza  # El siguiente del nuevo nodo apunta a la cabeza actual.
        self.cabeza = nuevo_nodo  # Actualiza la cabeza para que apunte al nuevo nodo.

    def imprimir_lista(self):
        actual = self.cabeza  # Comienza desde la cabeza de la lista.
        while actual:
            print(actual.dato, end=" -> ")  # Imprime el dato del nodo actual.
            actual = actual.siguiente  # Avanza al siguiente nodo.
        print("None")  # Imprime 'None' al final para indicar el fin de la lista.

# Creación de una instancia de ListaEnlazada.
lista = ListaEnlazada()
lista.agregar_al_inicio(10)  # Agrega el número 10 al inicio de la lista.
lista.agregar_al_inicio(20)  # Agrega el número 20 al inicio de la lista.
lista.agregar_al_inicio(30)  # Agrega el número 30 al inicio de la lista.
lista.imprimir_lista()  # Imprime toda la lista.

Embed on website

To embed this program on your website, copy the following code and paste it into your website's HTML: