,可以通过以下步骤实现:
以下是一个示例代码,演示如何使用string.split遍历树深度:
class TreeNode:
def __init__(self, value):
self.value = value
self.children = []
def build_tree(node_list):
root = TreeNode(node_list[0])
stack = [(root, 0)]
for i in range(1, len(node_list)):
node_value = node_list[i]
depth = node_value.count('.') + 1
node = TreeNode(node_value)
while stack[-1][1] >= depth:
stack.pop()
parent = stack[-1][0]
parent.children.append(node)
stack.append((node, depth))
return root
def traverse_depth(node, depth=0):
print(' ' * depth + node.value)
for child in node.children:
traverse_depth(child, depth + 1)
# 示例输入字符串
input_string = 'A,A.1,A.2,A.2.1,A.2.2,A.3,A.3.1,A.3.2,A.3.2.1,A.3.2.2,A.3.3'
# 使用逗号分隔字符串,构建树
node_list = input_string.split(',')
root = build_tree(node_list)
# 遍历树的深度并打印节点值
traverse_depth(root)
这段代码将输入字符串分割成节点列表,并构建了一个树的数据结构。然后,使用递归方式遍历树的深度,并打印每个节点的值。在示例输入字符串中,树的深度为4,节点的值按照深度缩进打印出来。
请注意,这只是一个示例代码,实际应用中可能需要根据具体需求进行适当的修改和扩展。
领取专属 10元无门槛券
手把手带您无忧上云