подскажите, пожалуйста, начинающему программисту. Нужно написать функцию по поиску значений по бинарному дереву. У меня получилось, что функция ‘find’ ищет значение только в главной ноде ( . как сделать, чтобы искала по всему дереву и в левой и в правой частях?
спасибо
def print_tree(t): if t == None: return if t['type'] == 'leaf': print(t['value']) else: print_tree(t['left']) print(t['value']) print_tree(t['right']) def leaf(v): return {'type': 'leaf', 'value':v} def node(v, l, r): return {'type': 'node', 'value':v,'left':l, 'right':r} def find(t, v): for c in n: if t['value'] == v: print( 'match') else: print('no match') l1 = leaf(2) l2 = leaf(8) n1 = node(5, l1, l2) l3 = leaf(47) n2 = node(20,None, l3) n = node(11, n1, n2) find(n,11)