Python——广度优先搜索遍历——温室大棚
温室大棚问题
问题引入
【问题描述】
在一个温室大棚中种有西红柿。该温室大棚使用种植架来种植西红柿,并使用人造光来照射西红柿。在种植架上的西红柿果实以二叉树的结构排列,二叉树的结点代表西红柿,二叉树的链接代表茎。不幸的是,温室大棚两侧的照射灯只有右侧的工作,而左侧的灯因某些原因无法使用。种植人员在准备收获西红柿时才发现这些问题。检查后发现,因为光的接受度不够,只有每一层种植架上最右侧的西红柿正常成熟,可以食用。现给出种植架上西红柿的二叉树结构,求如果在上述情况下,有多少西红柿是成熟的。
【输入形式】
用列表存放一个二叉树。
输入共一行,第一行输入二叉树的各个结点值。
【输出形式】
输出共一行,输出所有成熟的西红柿。
【样例输入】
1 2 3 4 5 0 6 0 7
【样例输出】
1 3 6 7
程序设计
class treenode(): #定义二叉树结点类
def __init__(self,val):
self.val=val #结点值
self.left=None #左子树
self.right=None #右子树
lst=list(map(int,input().split()))
tree=[treenode(0)]
for i in lst: