我正在尝试在节点和叶子之间打印特定路径。我创建了一个类n-tree(一个有多个n-children的树),但是当我运行函数时,它会告诉我
AttributeError: 'list' object has no attribute 'data'
这是我的代码:
class Node(object):
def __init__(self, data):
self.data = data
self.children = []
self.left = None
self.right = None
def add_child(self, obj):
self.children.append(obj)
def hasPath(root, arr, x):
if (not root):
return False
arr.append(root.data)
if(root.data == x):
return True
if(hasPath(root.left, arr, x) or hasPath(root.right, arr, x)):
return True
arr.pop(-1)
return False
def printPath(root, x):
arr = []
if(hasPath(root, arr, x)):
for i in range(len(arr) - 1):
print(arr[i], end = "->")
print(arr[len(arr) - 1])
else:
return []
我仍然是一个初学者,所以我不太了解课程的工作原理。任何帮助将不胜感激。