二叉树遍历前序中序后序java
时间: 2024-08-28 07:04:13 浏览: 56
java二叉树的遍历.md
二叉树的遍历主要有三种方式:前序遍历、中序遍历和后序遍历。以下是这三种遍历方式的Java实现:
1. **前序遍历**(Preorder Traversal):先访问根节点,然后递归地遍历左子树,最后遍历右子树。
```java
public void preorderTraversal(TreeNode node) {
if (node != null) {
System.out.print(node.val + " "); // 访问根
preorderTraversal(node.left); // 遍历左子树
preorderTraversal(node.right); // 遍历右子树
}
}
```
2. **中序遍历**(Inorder Traversal):先递归地遍历左子树,然后访问根节点,最后遍历右子树。
```java
public void inorderTraversal(TreeNode node) {
if (node != null) {
inorderTraversal(node.left);
System.out.print(node.val + " "); // 访问根
inorderTraversal(node.right);
}
}
```
3. **后序遍历**(Postorder Traversal):先递归地遍历左子树和右子树,最后访问根节点。
```java
public void postorderTraversal(TreeNode node) {
if (node != null) {
postorderTraversal(node.left);
postorderTraversal(node.right);
System.out.print(node.val + " "); // 访问根
}
}
```
在这里,`TreeNode`是一个假设存在的节点类,它通常包含一个值`val`和两个指向左右孩子的引用`left`和`right`。
阅读全文