Я пытаюсь реализовать древовидную структуру, и я хотел бы, чтобы каждый узел имел указатель на своих дочерних элементов и родителя. То есть ссылка между двумя узлами идет в обоих направлениях.Двунаправленные ссылки без базы данных
Существуют ли языки (например, python), где такое отношение может быть хорошо смоделировано? То, что я делаю прямо сейчас:
class Node {
setParent(Node p) {
this.parent.chilren.remove(this)
p.chilren.add(this)
this.parent = p
}
// ...
}
Но я предпочел бы подход, при котором я могу вынесу этот аспект двунаправленной ссылки таким образом, что я могу использовать ту же конструкцию, и в других местах. (например, более декларативный подход был бы приятным).