Melhorei um pouco a função search e fiz uma análise do algoritmo, acompanhando-o passo-a-passo. Ele parece funcionar e parece de fator montar uma árvore, como eu gostaria, mas o search nunca chega ao fim... Ainda não sei o porquê