我正在尝试实现树结构,我希望每个节点都有一个指向其子节点和父节点的指针。即两个节点之间的引用是双向的。
是否存在可以很好地建模这种关系的语言(例如python)?我现在正在做的是:
class Node {
setParent(Node p) {
this.parent.chilren.remove(this)
p.chilren.add(this)
this.parent = p
}
// ...
}
但我更喜欢一种方法,我可以分解双向引用的这个方面,这样我就可以在其他地方重用相同的构造。 (例如,更具声明性的方法会很好)。