java二叉树的遍历
时间: 2023-11-20 20:53:19 浏览: 39
Java二叉树的遍历有三种方式:前序遍历、中序遍历和后序遍历。其中,前序遍历是先遍历根节点,再遍历左子树和右子树;中序遍历是先遍历左子树,再遍历根节点和右子树;后序遍历是先遍历左子树,再遍历右子树和根节点。这三种遍历方式都采用了递归的思想。
具体实现方法如下:
1. 前序遍历:先访问根节点,再递归遍历左子树和右子树。
2. 中序遍历:先递归遍历左子树,再访问根节点,最后递归遍历右子树。
3. 后序遍历:先递归遍历左子树和右子树,最后访问根节点。
代码示例:
```
//定义二叉树节点
class TreeNode {
int val;
TreeNode left;
TreeNode right;
TreeNode(int x) { val = x; }
}
//前序遍历
public void preOrder(TreeNode root) {
if (root != null) {
System.out.print(root.val + " ");
preOrder(root.left);
preOrder(root.right);
}
}
//中序遍历
public void inOrder(TreeNode root) {
if (root != null) {
inOrder(root.left);
System.out.print(root.val + " ");
inOrder(root.right);
}
}
//后序遍历
public void postOrder(TreeNode root) {
if (root != null) {
postOrder(root.left);
postOrder(root.right);
System.out.print(root.val + " ");
}
}
```