java递归查询所有子节点怎么实现

avatar
作者
筋斗云
阅读量:1

在Java中,可以使用递归来查询所有子节点。具体实现如下:

首先,创建一个树节点类,包含一个值和一个子节点列表:

class TreeNode {     int value;     List<TreeNode> children;      public TreeNode(int value) {         this.value = value;         children = new ArrayList<>();     } } 

然后,创建一个递归方法来遍历所有子节点:

public void getAllChildren(TreeNode node) {     if (node == null) {         return;     }        // 遍历当前节点的所有子节点     for (TreeNode child : node.children) {         System.out.println(child.value);         getAllChildren(child); // 递归调用,遍历子节点的子节点     } } 

最后,使用以下代码创建一个树并调用递归方法来查询所有子节点:

public static void main(String[] args) {     // 创建树结构     TreeNode root = new TreeNode(1);     TreeNode node2 = new TreeNode(2);     TreeNode node3 = new TreeNode(3);     TreeNode node4 = new TreeNode(4);     TreeNode node5 = new TreeNode(5);      root.children.add(node2);     root.children.add(node3);     node2.children.add(node4);     node3.children.add(node5);      // 查询所有子节点     getAllChildren(root); } 

这样就可以通过递归查询树的所有子节点。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!