Este projeto consiste na criação manual de uma estrutura de dados Lista Duplamente Encadeada implementada na classe ListaDuplamenteEncadeada<T>
, que utiliza a classe No<T>
para representar cada elemento da Lista.
Os principais métodos implementados na classe ListaDuplamenteEncadeada<T>
são:
add
: para inserir um elemento na Lista.add
: metódo com sobrecarga para inserir um elemento aa Lista especificado pelo index em que deseja inseri-lo.remove
: para remover um elemento da Lista especificado pelo index.toString
: para retornar uma representação em string da Lista Duplamente Encadeada.
O uso de Generics no projeto permitiu que a instância do objeto fosse amarrada a um tipo de dado específico, tornando o código mais seguro e legível, e possibilitando a reutilização de código em diferentes tipos de dados sem a necessidade de repetição de código. Além disso, a utilização de Generics ajudou a evitar erros de casting e a melhorar a performance do projeto.
O projeto contém um exemplo de utilização da ListaDuplamenteEncadeada<String>
, onde são adicionados e removido alguns elementos para demonstrar o funcionamento de uma lista duplamente encadeada.
Todo o codigo está comentado para melhor entendimento.