使用java语言编写程序实现树的先序遍历和中序遍历
时间: 2024-09-18 08:12:45 浏览: 34
lab09 11.doc
在 Java 中,树的先序遍历(Preorder Traversal)和中序遍历(Inorder Traversal)是常见的数据结构操作,通常用于访问二叉树的节点。以下是使用递归的方式实现这两个遍历算法:
**先序遍历 (Preorder):**
```java
public class TreeNode {
int val;
TreeNode left;
TreeNode right;
// 添加其他构造方法...
}
public void preorderTraversal(TreeNode root) {
if (root != null) {
System.out.print(root.val + " "); // 访问根节点
preorderTraversal(root.left); // 遍历左子树
preorderTraversal(root.right); // 遍历右子树
}
}
```
**中序遍历 (Inorder):**
```java
public void inorderTraversal(TreeNode root) {
if (root != null) {
inorderTraversal(root.left); // 遍历左子树
System.out.print(root.val + " "); // 访问根节点
inorderTraversal(root.right); // 遍历右子树
}
}
```
在上述代码中,`TreeNode` 类表示二叉树的节点,包含值 `val` 和左右子节点。`preorderTraversal` 和 `inorderTraversal` 分别是先序和中序遍历的函数,它们接受树的根节点作为参数。
阅读全文