在C++中,可以通过定义二叉树节点结构来创建二叉树。每个节点结构都包含一个值和指向左右子节点的指针。然后你可以使用递归来构建二叉树。以下是一个简单的示例代码:
# include & ltiostream & gt
结构树节点{
int val
TreeNode * left
TreeNode * right
TreeNode(int x):val(x),left(nullptr),right(nullptr){ }
};
TreeNode * createBinaryTree(){
int val
性病::CIN & gt;& gtval
if(val = =-1){//-1表示空节点。
return nullptr
}
TreeNode* root =新的TreeNode(val);
std::cout <。& lt"输入& quot& lt& ltval <& lt":& quot;
root-& gt;left = createBinaryTree();
std::cout <。& lt"输入& quot& lt& ltval <& lt":& quot;
root-& gt;right = createBinaryTree();
返回根;
}
void in order traversal(TreeNode * root ){
if(root = = nullptr ){
返回;
}
in order traversal(root-& gt;左);
std::cout <。& ltroot-& gt;val <& lt"";
in order traversal(root-& gt;对);
}
int main() {
TreeNode * root = createBinaryTree();
std::cout <。& lt"二叉树的有序遍历;
inorderTraversal(root);
返回0;
}
在上面的示例代码中,首先定义一个TreeNode结构来表示二叉树节点,然后使用createBinaryTree函数递归地构造一个二叉树。用户输入树节点的值,-1表示空节点。最后,使用inorderTraversal函数打印二叉树的值。
以上内容来自互联网,不代表本站全部观点!欢迎关注我们:zhujipindao。com
评论前必须登录!
注册