Java 这段代码适用于二叉树中的Euler漫游吗?
我想用一个代码在二叉树中显示EulerTour。我编写了以下代码:Java 这段代码适用于二叉树中的Euler漫游吗?,java,binary-tree,postorder,Java,Binary Tree,Postorder,我想用一个代码在二叉树中显示EulerTour。我编写了以下代码: public void EulerTour(Node parent , Node focusNode) { if(focusNode.left!= null) EulerTour(parent, focusNode.left); if(focusNode.right!= null) EulerTour(parent, focusNode.right); System.o
public void EulerTour(Node parent , Node focusNode)
{
if(focusNode.left!= null)
EulerTour(parent, focusNode.left);
if(focusNode.right!= null)
EulerTour(parent, focusNode.right);
System.out.println(focusNode);
}
但我有三个问题:
void Euler_tour(TreeNode* root, vector<int>& result){
if (root == NULL)
return;
result.push_back(root->data);
if (root->left){
Euler_tour(root->left, result);
result.push_back(root->data);
}
if (root->right){
Euler_tour(root->right, result);
result.push_back(root->data);
}
}
void Euler\u教程(树节点*根、向量和结果){
if(root==NULL)
返回;
结果。推回(根->数据);
如果(根->左){
Euler_巡更(根->左,结果);
结果。推回(根->数据);
}
如果(根->右){
Euler_-tour(根->右,结果);
结果。推回(根->数据);
}
}
<代码> < p>这里是C++代码< /p>
void Euler_tour(TreeNode* root, vector<int>& result){
if (root == NULL)
return;
result.push_back(root->data);
if (root->left){
Euler_tour(root->left, result);
result.push_back(root->data);
}
if (root->right){
Euler_tour(root->right, result);
result.push_back(root->data);
}
}
void Euler\u教程(树节点*根、向量和结果){
if(root==NULL)
返回;
结果。推回(根->数据);
如果(根->左){
Euler_巡更(根->左,结果);
结果。推回(根->数据);
}
如果(根->右){
Euler_-tour(根->右,结果);
结果。推回(根->数据);
}
}