【发布时间】:2015-05-14 15:17:43
【问题描述】:
我在 SQL 中有这个树形数据结构表示,我想用 Java 中每个节点的正确关系显示数据,以便我可以对它们执行任何搜索算法。
所以,我认为使用左列和右列可以将一般树转换为二叉树,因此在它们上应用更多搜索算法会更容易。
另外,我希望能够进行不同的操作,例如添加/删除根、节点、叶子。
我是编程新手,所以这是我的课程
public class Node {
private int id;
private String name;
private int leftId;
private int rightId;
private int deepth;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getLeftId() {
return leftId;
}
public void setLeftId(int leftId) {
this.leftId = leftId;
}
public int getRightId() {
return rightId;
}
public void setRightId(int rightId) {
this.rightId = rightId;
}
public int getDeepth() {
return deepth;
}
public void setDeepth(int deepth) {
this.deepth = deepth;
}//con statement
List<Node> nodes = new ArrayList<>();
while(rs.next())
{Node nodes = new Node();
nodes.setname( rs.getString("name"));
//other
nodes.add(nodes);
}
return nodes;
}
public class tree{
//here i need help
}
【问题讨论】:
-
那么,问题是什么?你尝试了什么,它在哪里失败了?错误或不希望的输出是什么?
-
我建议对这种结构使用普通(不是二叉树)树,因为有些节点有超过 2 个子节点(例如 Deputy Comissioner 1)。
-
我尝试将数据库中的值分配给对应的左右。但我没有成功。原因?因为我不知道要为根和叶评估什么。看我的回答
-
该图片的 URL 已损坏。
标签: java sql tree nested binary-search-tree