java写一个二叉树遍历
时间: 2023-12-09 10:54:51 浏览: 78
二叉树遍历一般分为三种方式:前序遍历、中序遍历和后序遍历。其中,前序遍历的顺序是先根节点,再左子树,最后右子树;中序遍历的顺序是先左子树,再根节点,最后右子树;后序遍历的顺序是先左子树,再右子树,最后根节点。
以下是Java实现二叉树遍历的代码:
```java
class Node {
int val;
Node left;
Node right;
public Node(int val) {
this.val = val;
left = right = null;
}
}
public class BinaryTree {
public static void main(String[] args) {
Node root = new Node(1);
root.left = new Node(2);
root.right = new Node(3);
root.left.left = new Node(4);
root.left.right = new Node(5);
System.out.println("前序遍历:");
preOrder(root);
System.out.println();
System.out.println("中序遍历:");
inOrder(root);
System.out.println();
System.out.println("后序遍历:");
postOrder(root);
}
// 前序遍历
public static void preOrder(Node root) {
if (root != null) {
System.out.print(root.val + " ");
preOrder(root.left);
preOrder(root.right);
}
}
// 中序遍历
public static void inOrder(Node root) {
if (root != null) {
inOrder(root.left);
System.out.print(root.val + " ");
inOrder(root.right);
}
}
// 后序遍历
public static void postOrder(Node root) {
if (root != null) {
postOrder(root.left);
postOrder(root.right);
System.out.print(root.val + " ");
}
}
}
```
运行结果:
```
前序遍历:
1 2 4 5 3
中序遍历:
4 2 5 1 3
后序遍历:
4 5 2 3 1
```
阅读全文