Como implementar uma classe LinkedList do zero em Java

Publicados: 2013-06-19
Tutorial de implementação do Crunchify Java LinkedList

Se você está realmente construindo um sistema de produção real, então sim, você normalmente usaria o material na biblioteca padrão se o que você precisa estivesse disponível lá. Dito isto, não pense nisso como um exercício inútil.

É bom entender como as coisas funcionam, e understanding linked lists é um passo importante para entender estruturas de dados mais complexas, muitas das quais não existem nas bibliotecas padrão.

Existem algumas diferenças entre a maneira como você está criando uma lista vinculada e a maneira como a API de coleções Java faz isso.

A API Collections está tentando aderir a uma interface mais complicada. Sua LinkedList sempre terá pelo menos um elemento.

Com esse tipo de configuração, você usaria null para quando precisar de uma lista vazia. Pense em “próximo” como sendo “o resto da lista”. Na verdade, muitas pessoas chamariam de tail em vez de “próximo”.

Aqui está um diagrama de uma única LinkedList:

Crunchify Exemplo de lista vinculada simples

Outro deve ler:

  • Como iterar através da instância LinkedList em Java?
  • Java: Como encontrar o elemento do meio do LinkedList?

Qual é a melhor maneira de fazer uma lista vinculada em Java a partir do zero?

Bem, aqui está uma implementação mais simples da classe LinkedList em Java.

LinkedList em Java do zero - Tutorial Crunchify

Poucas coisas:

Aqui estamos inicializando o Node apenas enquanto adding 1st element .

Resultado:

As melhorias nessa implementação incluem torná-la uma double-linked list , adicionar métodos para insert e delete do meio ou do fim e adicionar métodos get e sort também.

Resposta referenciada do Stack Overflow por Laurence Gonsalves. Você pode estar interessado na lista de todos os tutoriais Java.