É isso importa para a resolução do problema?
Para mover valores entre arrays é simples:
TipoDeDado elemento = arrayOrigem[posicaoOrigem];
arrayOrigem[posicaoOrigem] = null;
arrayDestino[posicaoDestino] = elemento;
Sobre o algoritmo, é como nosso colega já disse, trata-se de uma explicação complicada para o problema das Torres de Hanói, ou Torres de Brahma:
No grande templo de Brahma em Benares, numa bandeja de metal sob a cúpula que marca o centro do mundo, três agulhas de diamante servem de pilar a sessenta e quatro discos de ouro puro.
Incansavelmente, os sacerdotes transferem os discos, um de cada vez, de agulha para agulha, obedecendo sempre à lei imutável de Brahma: Nenhum disco se poderá sobrepor a um menor.
No início do mundo todos os sessenta e quatro discos de ouro, foram dispostos na primeira das três agulhas, constituindo a Torre de Brahma.
No momento em que o menor dos discos for colocado de tal modo que se forme uma vez mais a Torre de Brahma numa agulha diferente da inicial, tanto a torre como o templo serão transformados em pó e o ribombar de um trovão assinalará o fim do mundo.