Junior
Qual ideia a classe LinkedList em Java implementa?
sobes.tech IA
Resposta da IA
LinkedList implementa uma lista duplamente ligada (doubly linked list).
- Cada elemento (nó) contém referências ao elemento anterior e ao seguinte na sequência.
- Armazena referências ao primeiro (head) e ao último (tail) elemento da lista.
- Permite inserir e remover elementos de forma eficiente no início, no fim e no meio da lista (com complexidade O(1) se tiver referência ao nó, ou O(n) na busca por índice).
- Não é eficiente para acesso arbitrário por índice (requer percorrer sequencialmente, com complexidade O(n)).
- Implementa as interfaces
ListeDeque, permitindo usá-la como lista, pilha ou fila.
Comparação com ArrayList:
| Característica | LinkedList | ArrayList |
|---|---|---|
| Estrutura interna | Lista duplamente ligada | Array dinâmico |
| Inserir/remover | O(1) (no início/fim ou por referência ao nó), O(n) (por índice) | O(1) (no fim), O(n) (no início/no meio) |
| Acesso arbitrário | O(n) | O(1) |
| Uso de memória | Maior (armazena referências) | Menor (se não precisar de expansão) |