python把树结构转成list
要将树结构转换成列表,可以使用深度优先遍历(DFS)或广度优先遍历(BFS)的方法。下面是使用深度优先遍历的示例代码:
class TreeNode:
def __init__(self, value):
self.value = value
self.children = []
def tree_to_list(root):
result = []
if root is None:
return result
stack = [root]
while stack:
node = stack.pop()
result.append(node.value)
stack.extend(node.children[::-1])
return result
这里假设树节点有一个value属性和一个children属性,children属性是一个列表存储子节点。tree_to_list函数接受一个树的根节点,并返回一个包含树节点值的列表。在函数中,我们使用一个栈来模拟深度优先遍历的过程。首先将根节点放入栈中,然后迭代地弹出栈顶元素,将其值加入结果列表,并将其子节点按照逆序添加到栈中。最后,返回结果列表。
你可以根据实际情况调整代码以适应不同的树结构
原文地址: https://www.cveoy.top/t/topic/h0X8 著作权归作者所有。请勿转载和采集!