Imprimindo BFS (Árvore Binária) em Ordem de Nível com formatação específica_

Para começar, esta questão não é um dup deeste, mas constrói sobre isso.

Tomando a árvore nessa questão como um exemplo,

    1 
   / \
  2   3
 /   / \
4   5   6

Como você modificaria seu programa para imprimi-lo,

1
2 3
4 5 6

em vez do geral

1 
2 
3 
4 
5 
6

Eu estou basicamente procurando por intuições da maneira mais eficiente de fazê-lo - eu tenho um método envolvendo o acréscimo do resultado a uma lista e, em seguida, looping através dele. Uma maneira mais eficiente pode ser armazenar o último elemento em cada nível à medida que ele é exibido e imprimir uma nova linha posteriormente.

Idéias?

questionAnswers(13)

yourAnswerToTheQuestion