私のコードは以下のとおりです。バイナリ ツリーから取得した航空機のリストをメインに戻そうとしています (最小から最大)。以下のコードでは、ルート ノードを 2 回取得しています。私は何時間もそれに取り組んできました...何か提案はありますか?
ありがとう、シャーロット
std::list<Aircraft> Tree::buildList()
{
std::list<Aircraft> aircraftList;
if (_root != 0)
{
aircraftList = buildListHelp(_root, aircraftList);
aircraftList.push_front(*_root->getAircraftData());
}
return aircraftList;
}
std::list<Aircraft> Tree::buildListHelp(Node* node, std::list<Aircraft> aircraftList)
{
//aircraftList.push_back(*node->getAircraftData())
/*if (node->getLeft() != 0)
{*/
if (node==0)
return aircraftList;
buildListHelp(node->getLeft(), aircraftList);
//}
aircraftList.push_back(*node->getAircraftData());
/*if (node->getRight() != 0)
{*/
buildListHelp(node->getRight(), aircraftList);
//}
return aircraftList;
}