Java遍历二叉树的代码主要包括前序遍历、中序遍历和后序遍历。以下是这三种遍历方法的代码实现:
- 前序遍历(根节点 -> 左子树 -> 右子树):
public class TreeNode {
int val;
TreeNode left;
TreeNode right;
TreeNode(int x) { val = x; }
}
public void preorderTraversal(TreeNode root) {
if (root != null) {
System.out.print(root.val + " ");
preorderTraversal(root.left);
preorderTraversal(root.right);
}
}
- 中序遍历(左子树 -> 根节点 -> 右子树):
public void inorderTraversal(TreeNode root) {
if (root != null) {
inorderTraversal(root.left);
System.out.print(root.val + " ");
inorderTraversal(root.right);
}
}
- 后序遍历(左子树 -> 右子树 -> 根节点):
public void postorderTraversal(TreeNode root) {
if (root != null) {
postorderTraversal(root.left);
postorderTraversal(root.right);
System.out.print(root.val + " ");
}
}
以上代码分别定义了一个TreeNode
类,用于表示二叉树的节点。然后分别实现了前序遍历、中序遍历和后序遍历的方法,这些方法接收一个TreeNode
类型的参数root
,表示二叉树的根节点。在遍历过程中,我们使用递归的方式遍历整个二叉树。