В решении от Javarush есть такой кусок. Расскажите что за конструкция с do такая, не встречал раньше
do {
if (!subQueue.isEmpty()) {
entry = subQueue.poll();
}
if (entry.leftChild != null) {
list.add(entry.leftChild);
subQueue.add(entry.leftChild);
}
if (entry.rightChild != null) {
list.add(entry.rightChild);
subQueue.add(entry.rightChild);
}
} while (!subQueue.isEmpty());
return list;