Generation

generate functionThu, 12 Dec 2024

haz una funcion de añadir un nodo en una lita enlazada al final

Aquí te muestro una función en C++ que agrega un nuevo nodo al final de una lista enlazada: ```cpp #include <iostream> // Definición de la estructura de un nodo struct Nodo { int valor; Nodo* siguiente; }; // Definición de la clase ListaEnlazada class ListaEnlazada { private: Nodo* cabeza; public: // Constructor ListaEnlazada() : cabeza(nullptr) {} // Destructor ~ListaEnlazada() { while (cabeza != nullptr) { Nodo* siguiente = cabeza->siguiente; delete cabeza; cabeza = siguiente; } } // Función para agregar un nuevo nodo al final de la lista void agregarNodo(int valor) { Nodo* nuevoNodo = new Nodo(); nuevoNodo->valor = valor; nuevoNodo->siguiente = nullptr; if (cabeza == nullptr) { cabeza = nuevoNodo; } else { Nodo* actual = cabeza; while (actual->siguiente != nullptr) { actual = actual->siguiente; } actual->siguiente = nuevoNodo; } } // Función para imprimir la lista void imprimirLista() { Nodo* actual = cabeza; while (actual != nullptr) { std::cout << actual->valor << " "; actual = actual->siguiente; } std::cout << std::endl; } }; int main() { ListaEnlazada lista; lista.agregarNodo(10); lista.agregarNodo(20); lista.agregarNodo(30); lista.imprimirLista(); // Imprime: 10 20 30 return 0; } ``` En esta implementación, la función `agregarNodo` crea un nuevo nodo con el valor especificado y lo agrega al final de la lista. Si la lista está vacía, el nuevo nodo se convierte en la cabeza de la lista. Si la lista no está vacía, la función recorre la lista hasta encontrar el último nodo y lo enlaza con el nuevo nodo.

Questions about programming?Chat with your personal AI assistant