c语言先序中序后序遍历二叉树
时间: 2023-11-17 16:03:04 浏览: 110
c语言遍历二叉树包括前序,中序,后序
5星 · 资源好评率100%
叉树是一种非常重要的数据结构,它的遍历方式有三种:先序遍历、中序遍历和后序遍历。C语言可以通过递归或者栈来实现这三种遍历方式。
先序遍历:先访问根节点,再访问左子树,最后访问右子树。
```c
void preorderTraversal(struct TreeNode* root){
if(root == NULL) return;
printf("%d ", root->val); //访问根节点
preorderTraversal(root->left); //访问左子树
preorderTraversal(root->right); //访问右子树
}
```
中序遍历:先访问左子树,再访问根节点,最后访问右子树。
```c
void inorderTraversal(struct TreeNode* root){
if(root == NULL) return;
inorderTraversal(root->left); //访问左子树
printf("%d ", root->val); //访问根节点
inorderTraversal(root->right); //访问右子树
}
```
后序遍历:先访问左子树,再访问右子树,最后访问根节点。
```c
void postorderTraversal(struct TreeNode* root){
if(root == NULL) return;
postorderTraversal(root->left); //访问左子树
postorderTraversal(root->right); //访问右子树
printf("%d ", root->val); //访问根节点
}
```
阅读全文