没有数据库的双向参考

时间:2013-06-07 17:50:31

标签: reference bidirectional

我正在尝试实现树结构,我希望每个节点都有一个指向其子节点和父节点的指针。即两个节点之间的引用是双向的。

是否存在可以很好地建模这种关系的语言(例如python)?我现在正在做的是:

class Node {
  setParent(Node p) {
    this.parent.chilren.remove(this) 
    p.chilren.add(this) 
    this.parent = p
  }
  // ...
}

但我更喜欢一种方法,我可以分解双向引用的这个方面,这样我就可以在其他地方重用相同的构造。 (例如,更具声明性的方法会很好)。

1 个答案:

答案 0 :(得分:0)

查看Haskell和函数语言以简化递归数据结构。请参阅文章here