Вы должны распечатать все узлы уровня одновременно, как показано ниже. Надеюсь, это решит вашу проблему. Дайте мне знать, если не поняли какую-либо часть.
public static void printLevelWise(treeNode<Integer> root) {
Queue<treeNode<Integer>> q = new LinkedList<>();
q.add(root);
System.out.print(root.data);
while (!q.isEmpty()) {
int levelSize = q.size();
if (levelSize > 0) System.out.println();
while(levelSize > 0) {
treeNode<Integer> a = q.remove();
for (int i = 0; i < a.children.size(); i++) {
q.add(a.children.get(i));
System.out.print(a.children.get(i).data + " ");
}
levelSize--;
}
}
}