您可以首先创建一个节点的二维数组,其中行 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