3
我有一个看起来像这样的网络/树。以编程方式分配节点到分层树/网络
我已经使用二进制树来表示这种模式。然而手动分配节点的right
和left
参数成为累赘为水平> 4.
是否有通过我可以做上述分配的方法编程
我有一个看起来像这样的网络/树。以编程方式分配节点到分层树/网络
我已经使用二进制树来表示这种模式。然而手动分配节点的right
和left
参数成为累赘为水平> 4.
是否有通过我可以做上述分配的方法编程
可以在第一创建节点,其中的2D阵列行i
对应于你的论文水平i
,和列j
相当于该级别的j
个节点:
for i = 1 to n:
for j = 1 to i:
A[i][j] = new Node()
然后,节点之间的关系是,在A[i][j]
节点已经离开孩子A[i+1][j]
并有权利的孩子是A[i+1][j+1]
。
for i = 1 to n-1:
for j = 1 to i:
A[i][j].left = A[i+1][j]
A[i][j].right = A[i+1][j+1]
for j = 1 to n:
A[n][j].left = null
A[n][j].right = null