У меня есть объект SpanTree
, который имеет переменные index1
, index2
, weight
.Основываясь на соединении индексов, я хотел бы создать дерево, которое всегда начиналось бы с 0
.
. В этом примере 0
связано с 2
и 5
, поэтому они будутсначала добавьте к дереву, а затем продолжите с самого низкого, мне нужно будет найти, какие числа связаны с 2
, которые в этом случае 6
и 7
и т. д.
SpanTree{index1=0, index2=2, weight=10}
SpanTree{index1=3, index2=4, weight=17}
SpanTree{index1=1, index2=4, weight=23}
SpanTree{index1=0, index2=5, weight=41}
SpanTree{index1=2, index2=6, weight=46}
SpanTree{index1=1, index2=5, weight=49}
SpanTree{index1=2, index2=7, weight=119}
0
2 5
6 7 1
4
Я изучил BST
, но реализация кажется немного другой, и если бы я добавил их к BST
, я бы получил другой результат.
В качестве окончательного результата мне нужно preorder traverse
через дерево или все узлы и получить результат, который в этом случае будет:
0 - 2 - 6 - 7 - 5 - 1 - 4
Что я должен использовать дляполучить желаемый результат?
Или как я могу создать Binary Tree
, где я мог бы добавить к корню, что означает, что если бы я дал значения (0, 2)
, а затем (0,5)
, это добавило бы эти значенияне под друг друга, а отдельно, и тогда (2, 6)
будет идти под node
2.