Java树形结构获取最后一层的树形结构的id
时间: 2024-01-22 07:18:24 浏览: 137
假设你的树形结构是一个类似于以下的数据结构:
```
public class TreeNode {
private int id;
private String name;
private List<TreeNode> children;
// 省略 getter 和 setter 方法
}
```
则可以使用递归的方式来获取最后一层的树形结构的 id。具体实现如下:
```
public List<Integer> getLastLevelIds(TreeNode node) {
List<Integer> ids = new ArrayList<>();
if (node.getChildren() == null || node.getChildren().isEmpty()) {
// 如果当前节点没有子节点,说明已经到了最后一层,将当前节点的 id 加入到 ids 中
ids.add(node.getId());
} else {
// 如果当前节点有子节点,递归获取子节点的最后一层的 id,并将结果加入到 ids 中
for (TreeNode child : node.getChildren()) {
ids.addAll(getLastLevelIds(child));
}
}
return ids;
}
```
这个方法接受一个 TreeNode 对象作为参数,返回一个包含最后一层的所有节点的 id 的 List。如果根节点也需要计入最后一层,可以在调用该方法时将根节点作为参数传入。
阅读全文