二叉树的先中后序遍历完整实现代码c++
时间: 2023-06-02 08:06:16 浏览: 112
二叉树的先序、中序、后序、分层遍历C++实现
4星 · 用户满意度95%
好的,以下是二叉树的先中后序遍历的完整实现代码(C语言):
// 定义二叉树节点
typedef struct TreeNode {
int val;
struct TreeNode *left;
struct TreeNode *right;
} TreeNode;
// 先序遍历函数
void preorderTraversal(TreeNode* root){
if(root == NULL) return;
// 先遍历根节点
printf("%d ", root->val);
// 遍历左子树
preorderTraversal(root->left);
// 遍历右子树
preorderTraversal(root->right);
}
// 中序遍历函数
void inorderTraversal(TreeNode* root){
if(root == NULL) return;
// 遍历左子树
inorderTraversal(root->left);
// 遍历根节点
printf("%d ", root->val);
// 遍历右子树
inorderTraversal(root->right);
}
// 后序遍历函数
void postorderTraversal(TreeNode* root){
if(root == NULL) return;
// 遍历左子树
postorderTraversal(root->left);
// 遍历右子树
postorderTraversal(root->right);
// 遍历根节点
printf("%d ", root->val);
}
以上是完整的二叉树先中后序遍历的实现代码。如有需要,可以根据自己的实际情况进行修改。
阅读全文