所以我一直在审查一些旧的家庭作业,我们的一个任务是使用递归来删除树的奇数行(不包括根)。为了帮助您可视化,这是初始树的图像:
所以在调用了删除方法之后,[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
我现在已经回到这个问题,并尝试使用动态编程解决它,但我似乎无法解决一个能让我得到我正在寻找的结果的解决方案。如果有人能帮助我指出正确的方向,那将是一个很大的帮助。谢谢!