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

如何实现java二叉树的顺序遍历(java二叉树的层次遍历)

在Java中,队列可以用来实现二叉树的顺序遍历。具体步骤如下:

首先,创建一个队列来对根节点进行排队。

进入循环直到队列为空。在循环中,首先记录当前队列的大小,指示当前层中的节点数。

多次遍历当前层的节点,每次将队列的头节点出队,并将其值存储在结果列表中。同时,它的左右子节点也进入队列。

返回结果列表,完成二叉树的顺序遍历。

以下是Java代码的一个示例:

导入Java . util . ArrayList;
导入Java . util . linked list;
导入Java . util . list;
导入Java . util . queue;

类别TreeNode {
int val
TreeNode向左;
TreeNode right

TreeNode(int x ){
val = x;
}
}

公共类BinaryTreeLevelOrderTraversal {
公共列表& lt列表& lt整数& gt& gtlevelOrder(树节点根){
列表& lt列表& lt整数& gt& gtresult = new ArrayList & lt& gt();
if(root = = null ){
返回结果;
}

队列& ltTreeNode & gtqueue = new LinkedList & lt& gt();
queue . offer(root);

而(!queue . isempty()){
int size = queue . size();
列表& lt整数& gtlevel = new ArrayList&lt& gt();

for(int I = 0;我& lt尺寸;i++) {
TreeNode node = queue . poll();
level . add(node . val);

if(node . left!= null) {
queue . offer(node . left);
}
if(node . right!= null) {
queue . offer(node . right);
}
}

result . add(level);
}

返回结果;
}
}

使用上面的代码,您可以遍历给定二叉树的序列并返回包含每层节点值的列表。

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

未经允许不得转载:主机频道 » 如何实现java二叉树的顺序遍历(java二叉树的层次遍历)

评论 抢沙发

评论前必须登录!