Как сказано в описании, вы должны вывести «-1», если дочерний элемент равен нулю.
Он не говорит, что вы должны вывести «-1», если дочерний элемент data
равен -1
.
Это будет то же самое, что и печать data
, поэтому это не будет описываться как особый случай.
(Очень важно внимательно прочитать описания проблем. Я думаю, что вы путаете это с форматом ввода программы, который имеет -1, чтобы указать на отсутствие дочернего узла, но это не вход для вашей функции.)
Вам нужно
if(front->left != nullptr) {
cout << "L:" << front->left->data << ",";
pendingNodes.push(front->left);
}
else {
cout << "L:" << "-1" << ",";
}
(Вам также необходимо настроить как вы печатаете запятые, но это другая проблема.)