我正在尝试遍历BFS,但我仍然遇到错误。我相信我有 正确遵循了说明,但我仍然遇到错误。 用根元素和一个空列表创建一个Q 而Q中有节点 抓取第一个并将其添加到结果列表 如果左侧有一个节点,则将其添加到Q中 如果右边有一个节点,则将其添加到Q
def BFS(self):
if self.__value is None:
return [None]
Q = []
Q.append(self)
while Q:
node = Q.pop(0)
if node.__left is not None:
Q.append(node.__right)
if node.__right is not None:
Q.append(node.__right)
return Q
这是我需要通过的测试用例。
def test_BFS(self):
bt = binary_search_tree([20, 10, 30, 25, 35])
self.assertEqual(bt.BFS(), [20, 10, 30, 25, 35])
这是我遇到的错误AssertionError:列表不同:[]!= [20、10、30,> 25、35]