C语言中使用中序遍历遍历二叉树
时间: 2024-12-17 17:31:49 浏览: 3
二叉树中序遍历
在C语言中,中序遍历是一种常见的二叉树遍历方法,它按照“左-根-右”的顺序访问每个节点。以下是使用递归方式实现中序遍历的基本步骤:
```c
// 定义二叉树节点结构体
typedef struct TreeNode {
int val;
struct TreeNode* left;
struct TreeNode* right;
} TreeNode;
// 中序遍历函数
void inorderTraversal(TreeNode* root) {
if (root != NULL) { // 如果当前节点非空
inorderTraversal(root->left); // 先遍历左子树
printf("%d ", root->val); // 访问当前节点值
inorderTraversal(root->right); // 然后遍历右子树
}
}
```
在这个函数中,我们首先检查根节点是否为空,如果不为空,就递归地遍历左子树,然后访问根节点的值,最后遍历右子树。如果根节点为空,递归就会结束。
阅读全文