以下是一个示例代码,用于遍历决策树并记录每个节点:
class TreeNode:
def __init__(self, value):
self.value = value
self.left = None
self.right = None
def traverse_decision_tree(node, node_list):
if node is None:
return
node_list.append(node.value) # 记录当前节点的值
traverse_decision_tree(node.left, node_list) # 递归遍历左子树
traverse_decision_tree(node.right, node_list) # 递归遍历右子树
# 创建一个决策树
root = TreeNode('A')
root.left = TreeNode('B')
root.right = TreeNode('C')
root.left.left = TreeNode('D')
root.left.right = TreeNode('E')
# 遍历决策树并记录每个节点
nodes = []
traverse_decision_tree(root, nodes)
# 输出结果
print(nodes)
运行结果为:['A', 'B', 'D', 'E', 'C']。在这个示例中,决策树的节点值分别为A、B、C、D和E,通过遍历决策树,我们记录了每个节点的值,并将结果存储在nodes
列表中。最后,我们打印出nodes
列表的内容。