给定一个二叉树和指向树中节点(存在)的指针,假设我们有父指针。我必须找到删除已删除节点的相邻节点和后续相邻节点的迭代次数。这里删除意味着设置一些标志,节点 - >烧伤。我不会删除该节点。 示例:
1
/ \
2 3
/ \ / \
4 5 6 7
/ /
8 9
/
10
并且树中的给定节点是4,
每次迭代中刻录的节点
在迭代1中:
在迭代2中:
这继续......,因此我必须找到刻录所有节点所需的迭代次数。
答案 0 :(得分:0)
效率不高但我认为它会起作用:
维护一个队列,以便考虑删除下一个节点。在删除节点的相邻节点之前,请检查它们是否已设置burn
标志。
此外,每次从队列中删除项目时:
Hash
以便更快地访问)