请看一下:
所以基本上我有一个类似于体系结构的树,它实际上不是一棵树,因为根节点可能始终可用或者可能不可用。
Root连接到许多孩子,而这些孩子可能会或可能不会连接到其他孩子。一个特定级别的所有节点或具有不同id的类似对象作为其标识符。
我正在考虑将其实现为树,但随后使用大型数据集,可能很难搜索特定节点。或者我应该在每个级别制作一个地图对象,并根据他们的密钥,我将能够搜索他们与父节点的关系,如果它存在或不?
或者你认为还有其他更好的方法可以做到这一点,因为如果我把它作为一棵树它会随机增长,加上它的扩展我有一个问题,有些孩子会有很多父节点,这可能不是可能在树上?
请提出一些实施建议?
答案 0 :(得分:2)
您可以将其表示为方向图:每个节点都有来自其父节点的传入边和传递边到其子节点:
public class Node {
private List<Object> parents; // incoming
private List<Object> children; // outgoing
}
答案 1 :(得分:0)
您可能需要查看b-tree concept