用c语言写二叉树的遍历
时间: 2023-06-09 08:08:17 浏览: 84
在C语言中,二叉树的遍历可以分为三种:前序遍历、中序遍历和后序遍历。
前序遍历:根节点 -> 左子树 -> 右子树
中序遍历:左子树 -> 根节点 -> 右子树
后序遍历:左子树 -> 右子树 -> 根节点
下面是C语言中实现二叉树遍历的示例代码:
// 定义二叉树节点结构体
struct TreeNode {
int val;
struct TreeNode *left;
struct TreeNode *right;
};
// 前序遍历
void preOrder(struct TreeNode *root) {
if(root == NULL) return;
printf("%d ", root->val);
preOrder(root->left);
preOrder(root->right);
}
// 中序遍历
void inOrder(struct TreeNode *root) {
if(root == NULL) return;
inOrder(root->left);
printf("%d ", root->val);
inOrder(root->right);
}
// 后序遍历
void postOrder(struct TreeNode *root) {
if(root == NULL) return;
postOrder(root->left);
postOrder(root->right);
printf("%d ", root->val);
}
以上代码演示了如何在C语言中实现二叉树的遍历,可以根据需要选择不同的遍历方式。
阅读全文