A estrutura de dados lista ligada é uma alternativa poderosa para matrizes simples. Ao contrário de matrizes , os dados podem ser rapidamente adicionados e removidos a partir de uma lista ligada sem recriar a lista de um elemento de cada vez. No entanto, diferentemente de matrizes , os dados em uma lista ligada só pode ser acessado em ordem. Você pode fazer isso com um loop simples ou com uma função recursiva (ou auto- chamada) . Isso vai ser escrito em Java , mas o código pode ser implementado em qualquer idioma , com apenas pequenas modificações para se adequar as diferenças de sintaxe. Instruções 
 1 
 Abra um editor de texto 
 2 
 Cole o seguinte código Java: . 
 
 Public class RecursiveLLTraverser { 
 
 public static traverseList void ( LinkedList l) { } 
 
 
 
 } 
 
 Todo o código vai dentro do método " traverseList " . 
 3 
 cole o seguinte dentro do método " traverseList " : 
 
 if ( l.size () == 0) return; 
 
 if ( l.size () > 0) { 
 
 LinkedList n = l.clone (); 
 
 objeto o = n.removeFirst (); 
 
 o.doSomething (); 
 
 traverseList (n ); 
 
 } 
 
 Isso leva uma lista ligada e faz um clone superficial do que com o primeiro elemento removido (e alguns processamento realizado sobre ele ) que o clone é então executado através da Lista de travessia . si . Eventualmente, o clone estará vazia , caso em que o método de lista travessia vai simplesmente voltar.