java版本 递归树形结构
时间: 2023-03-31 10:01:56 浏览: 120
Java 版本的递归树形结构可以使用递归函数来实现,每个节点都可以看作是一个子树,递归函数可以遍历整个树形结构。在 Java 中,可以使用类来表示树形结构,每个节点可以看作是一个对象,包含节点的值和子节点的引用。递归函数可以通过访问子节点的引用来遍历整个树形结构。
相关问题
java版本 递归树形结构的源代码
以下是 Java 版本的递归树形结构的源代码:
```
public class TreeNode {
private int val;
private TreeNode left;
private TreeNode right;
public TreeNode(int val) {
this.val = val;
this.left = null;
this.right = null;
}
public void insert(int val) {
if (val < this.val) {
if (this.left == null) {
this.left = new TreeNode(val);
} else {
this.left.insert(val);
}
} else {
if (this.right == null) {
this.right = new TreeNode(val);
} else {
this.right.insert(val);
}
}
}
public void printInOrder() {
if (this.left != null) {
this.left.printInOrder();
}
System.out.print(this.val + " ");
if (this.right != null) {
this.right.printInOrder();
}
}
}
```
希望对你有帮助!
java递归树形结构查询
对于一个树形结构,我们可以使用递归算法来进行查询。假设我们有如下的树形结构:
```
A
├─B
│ ├─D
│ └─E
├─C
│ ├─F
│ └─G
└─H
└─I
```
我们可以定义一个递归函数,来查询某个节点及其子节点的信息:
```java
public void search(TreeNode node) {
// 处理当前节点
System.out.println(node);
// 递归处理子节点
for (TreeNode child : node.getChildren()) {
search(child);
}
}
```
其中,`TreeNode` 表示树节点的数据结构,`getChildren()` 方法返回当前节点的子节点列表。我们可以从根节点开始调用 `search` 函数,就可以递归地遍历整个树形结构。
例如,要查询节点 `C` 及其子节点的信息,可以这样调用:
```java
TreeNode rootNode = ...; // 根节点
TreeNode cNode = ...; // 要查询的节点
search(cNode);
```
这样就能输出如下结果:
```
C
F
G
```
阅读全文