二叉树层序遍历Java实现「建议收藏」

二叉树层序遍历Java实现「建议收藏」publicclassNode{privateintvalue;privateNodelchild;privateNoderchild;publicintgetValue(){returnvalue;}publicvoidsetValue(intvalue){this.value=value;}

大家好,又见面了,我是你们的朋友全栈君。

二叉树层序遍历Java实现「建议收藏」

public class Node {


private int value;


private Node lchild;


private Node rchild;


public int getValue() {


return value;


}

public void setValue(int value) {


this.value = value;


}


public Node getLchild() {


return lchild;


}


public void setLchild(Node lchild) {


this.lchild = lchild;


}


public Node getRchild() {


return rchild;


}


public void setRchild(Node rchild) {


this.rchild = rchild;


}


@Override


public String toString() {


return “Node [value=” + value + “]”;


}

}

import java.util.LinkedList;
import java.util.Queue;

public class Main {

public static void show(Node node) {

Queue<Node> queue = new LinkedList<>();
if (node == null) {

return;
}
queue.offer(node);
while (queue.peek() != null) {

Node n = queue.poll();
System.out.print(n.getValue());
if (n.getLchild() != null) {

queue.offer(n.getLchild());
}

if (n.getRchild() != null) {

queue.offer(n.getRchild());
}

}

}

public static void main(String[] args) {

Node[] nodes = new Node[10];
for (int i = 1; i < nodes.length; i++) {

Node n = new Node();
n.setValue(i);
nodes[i] = n;
}

nodes[1].setLchild(nodes[2]);
nodes[1].setRchild(nodes[3]);

nodes[2].setLchild(nodes[4]);
nodes[2].setRchild(nodes[5]);

nodes[3].setLchild(nodes[6]);
nodes[3].setRchild(nodes[7]);

nodes[4].setLchild(nodes[8]);
nodes[5].setRchild(nodes[9]);

show(nodes[1]);
}
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/143600.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号