所以我一直在复习一些旧的家庭作业,其中一项任务是使用递归删除树的奇数行(不包括根)。为了帮助您可视化,这是初始树的图像:
所以在调用删除方法后,[bcd] 将消失,[hi] 将消失。这是我的递归代码。
def deleteOddRows(self):
oddRemoval = [] #Generate list with odd rows removed
for child in self.getChildren(): #Children of the root
for childChildren in child.getChildren(): #Grandchildren
oddRemoval.append(childChildren) #Puts into list
childChildren.deleteOddRows()
self.children = oddRemoval
我现在又回到了这个问题,并尝试使用动态编程来解决它,但我似乎无法围绕一个能让我得到我正在寻找的结果的解决方案。如果有人可以帮助我指出正确的方向,那将是一个很大的帮助。谢谢!