关注分享主机优惠活动
国内外VPS云服务器

如何建立和遍历java二叉树(java实现二叉树代码)

Java中二叉树的建立和遍历可以通过定义一个节点类来表示二叉树的节点,然后构建二叉树并递归遍历来实现。下面是一个示例代码:

//定义二叉树节点类
类别TreeNode {
int val
TreeNode向左;
TreeNode right

公共TreeNode(int val ){
this.val = val
this.left = null
this.right = null
}
}

//二叉树类
BinaryTree类{
私有TreeNode根;

公共binary tree(){
root = null
}

//递归插入节点
私有TreeNode插入递归(TreeNode current,int val ){
if(current = = null ){
返回新的TreeNode(val);
}

if(val & lt;当前值)
current . left = insert recursive(current . left,val);
} else if(val & gt;当前值)
current . right = insert recursive(current . right,val);
}

返回电流;
}

//插入节点
公共空插入(int val ){
root = insert recursive(root,val);
}

//中间顺序遍历
private void in order traversal(TreeNode节点){
如果(节点!= null)
inorderTraversal(node . left);
system . out . print(node . val+& quot;");
inorderTraversal(node . right);
}
}

公共空订单(){
inorderTraversal(root);
}

//前序遍历
私有void preorder traversal(TreeNode节点){
如果(节点!= null)
system . out . print(node . val+& quot;");
preorder traversal(node . left);
preorder traversal(node . right);
}
}

公共void预订(){
preorderTraversal(根);
}

//后序遍历
私有void postorderTraversal(TreeNode节点){
如果(节点!= null)
postorderTraversal(node . left);
postorderTraversal(node . right);
system . out . print(node . val+& quot;");
}
}

公共void post order(){
postorderTraversal(根);
}
}

公共类Main {
公共静态void main(String【】args ){
binary tree tree = new binary tree();

tree . insert(5);
tree . insert(3);
tree . insert(7);
tree . insert(2);
tree . insert(4);
tree . insert(6);
tree . insert(8);

System.out.print有序遍历:& quot);
tree . in order();
system . out . println();

System.out.print前序遍历:);
tree . preorder();
system . out . println();

System.out.print后序遍历:);
tree . post order();
system . out . println();
}
}

在上面的示例代码中,通过定义TreeNode类来表示BinaryTree的节点和BinaryTree类来表示二叉树,实现了插入节点的方法和三种遍历模式(中间顺序、前置顺序和后置顺序)。在主类中建立并遍历二叉树。

以上内容来自互联网,不代表本站全部观点!欢迎关注我们:zhujipindao。com

未经允许不得转载:主机频道 » 如何建立和遍历java二叉树(java实现二叉树代码)

评论 抢沙发

评论前必须登录!