Trilhas
/
C++
C++
/
Exercícios
/
Lista encadeada simples
Lista encadeada simples

Lista encadeada simples

Médio

Introdução

Você trabalha em uma empresa de streaming de música.

Você recebeu a tarefa de criar um recurso de playlist para o seu aplicativo de música.

Instruções

Escreva um protótipo do aplicativo de reprodução de música.

Para o protótipo, cada música será simplesmente representada por um número. Dado um intervalo de números (os IDs das músicas), crie uma lista simplesmente encadeada.

Dada uma lista simplesmente encadeada, você deve conseguir inverter a lista para tocar as músicas na ordem inversa.

Note

A lista encadeada é uma estrutura de dados fundamental na ciência da computação, e costuma ser usada na implementação de outras estruturas de dados.

O tipo mais simples de lista encadeada é a lista simplesmente encadeada. Isso significa que cada elemento (ou "nó") contém dados, junto com algo que aponta para o próximo nó da lista.

Se você quiser se aprofundar em listas encadeadas, dê uma olhada neste artigo, que explica o assunto com desenhos bem feitos.

Dicas de implementação

Fornecemos para você a estrutura geral de uma classe List. Ela tem as variáveis privadas head, do tipo Element*, e current_size, do tipo size_t, que você pode usar.

A struct Element também foi fornecida, com duas variáveis: data, do tipo int, e next, do tipo Element*.

Você pode ver os detalhes em simple_linked_list.h. Você não precisa alterar esse arquivo, mas pode fazer isso se for melhor para você.

Os testes usam as funções conforme elas são fornecidas em simple_linked_list.cpp, não mude a assinatura delas. Você pode adicionar mais funções e membros, se quiser.

Posso usar ponteiros inteligentes?

Embora o arquivo de cabeçalho inclua ponteiros brutos, você é livre para escolher uma implementação diferente.

Editar via GitHub O link abre em uma nova janela ou aba
C++ Exercism

Tudo pronto para começar Lista encadeada simples?

Crie sua conta no Exercism para aprender e dominar C++ com 19 conceitos100 exercícios e mentoria humana de verdade, tudo de graça.