Tracks
/
C++
C++
/
Ejercicios
/
Lista enlazada simple
Lista enlazada simple

Lista enlazada simple

Intermedia

Introducción

Trabajas para una empresa de streaming de música.

Te encargaron crear una funcionalidad de listas de reproducción para tu aplicación de música.

Instrucciones

Escribe un prototipo de la aplicación del reproductor de música.

Para el prototipo, cada canción se representará simplemente con un número. Dado un rango de números (los IDs de las canciones), crea una lista enlazada simple.

Dada una lista enlazada simple, debes poder invertir la lista para reproducir las canciones en el orden opuesto.

Note

La lista enlazada es una estructura de datos fundamental en las ciencias de la computación, y se usa a menudo en la implementación de otras estructuras de datos.

El tipo más simple de lista enlazada es la lista enlazada simple. Eso significa que cada elemento (o «nodo») contiene datos, junto con algo que apunta al siguiente nodo de la lista.

Si quieres profundizar más en las listas enlazadas, echa un vistazo a este artículo, que lo explica con dibujos muy claros.

Sugerencias de implementación

Te hemos proporcionado la estructura general de una clase List. Tiene las variables privadas head de tipo Element* y current_size de tipo size_t que puedes usar.

También te damos la estructura Element, que tiene dos variables: data de tipo int y next de tipo Element*.

Puedes ver los detalles en simple_linked_list.h. No tienes que cambiar ese archivo, pero puedes hacerlo si se ajusta a lo que necesitas.

Las pruebas usan las funciones tal como se proporcionan en simple_linked_list.cpp, así que no cambies su firma. Puedes agregar más funciones y miembros si quieres.

¿Puedo usar punteros inteligentes?

Aunque el archivo de encabezado incluye punteros sin procesar, eres libre de elegir una implementación diferente.

Editar en GitHub El enlace se abre en una ventana o una pestaña nuevas
C++ Exercism

¿Todo listo para empezar Lista enlazada simple?

Regístrate en Exercism para aprender y dominar C++ con 19 conceptos100 ejercicios y mentoría humana real, todo gratis.