java 返回树形结构数据
时间: 2024-09-07 11:03:46 浏览: 36
在Java中,返回树形结构数据通常涉及到使用递归或迭代的方式创建和操作`TreeNode`、`TreeMap`、`TreeSet`等数据结构,以及自定义的节点类来表示树的各个层级。下面是一个简单的例子,展示如何使用自定义的`TreeNode`类来表示树:
```java
class TreeNode {
int val;
TreeNode left;
TreeNode right;
TreeNode(int val) {
this.val = val;
}
}
// 创建一个树的数据结构
public class TreeData {
private TreeNode root;
// 添加节点方法
public void addNode(int val, TreeNode parent) {
if (root == null) {
root = new TreeNode(val);
} else {
if (parent.left != null && parent.left.val == val) { // 如果值已存在,则忽略
return;
}
if (val < parent.val) {
if (parent.left == null) {
parent.left = new TreeNode(val);
} else {
addNode(val, parent.left); // 递归添加到左子树
}
} else {
if (parent.right == null) {
parent.right = new TreeNode(val);
} else {
addNode(val, parent.right); // 递归添加到右子树
}
}
}
}
// 其他遍历方法如前序、中序、后序遍历...
}
阅读全文