java二叉树遍历代码怎么写

33次阅读
没有评论

共计 1111 个字符,预计需要花费 3 分钟才能阅读完成。

在 Java 中,二叉树的遍历有三种方式:前序遍历、中序遍历和后序遍历。下面是这三种遍历方式的代码示例:

// 定义二叉树节点 
class TreeNode {int val;
    TreeNode left;
    TreeNode right;
    
    TreeNode(int val) {this.val = val;
    }
}

// 前序遍历 
void preOrderTraversal(TreeNode root) {if (root == null) {return;
    }
    
    System.out.print(root.val + " ");  // 先访问根节点 
    preOrderTraversal(root.left);      // 再前序遍历左子树 
    preOrderTraversal(root.right);     // 最后前序遍历右子树 
}

// 中序遍历 
void inOrderTraversal(TreeNode root) {if (root == null) {return;
    }
    
    inOrderTraversal(root.left);       // 先中序遍历左子树 
    System.out.print(root.val + " ");  // 再访问根节点 
    inOrderTraversal(root.right);      // 最后中序遍历右子树 
}

// 后序遍历 
void postOrderTraversal(TreeNode root) {if (root == null) {return;
    }
    
    postOrderTraversal(root.left);     // 先后序遍历左子树 
    postOrderTraversal(root.right);    // 再后序遍历右子树 
    System.out.print(root.val + " ");  // 最后访问根节点 
}

使用时,可以先构建二叉树,然后根据需要选择对应的遍历方法进行遍历。例如:

public static void main(String[] args) {// 构建二叉树 
    TreeNode root = new TreeNode(1);
    root.left = new TreeNode(2);
    root.right = new TreeNode(3);
    root.left.left = new TreeNode(4);
    root.left.right = new TreeNode(5);
    
    // 前序遍历 
    System.out.println(" 前序遍历结果:");
    preOrderTraversal(root);
    
    // 中序遍历 
    System.out.println("\n 中序遍历结果:");
    inOrderTraversal(root);
    
    // 后序遍历 
    System.out.println("\n 后序遍历结果:");
    postOrderTraversal(root);
}

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-12发表,共计1111字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)