0
У меня есть этот код, который печатает данные каждого узла в дереве:печати дерево без рекурсии
class Node:
def __init__(self,data, children=[]):
self.data = data
self.children = children
def __repr__(self):
return str(self.data)
n1 = Node(1)
n2 = Node(2)
n3 = Node(3)
n4 = Node(4)
n5 = Node(5)
n6 = Node(6)
n7 = Node(7)
n1.children=[n2,n3,n4]
n3.children = [n5,n6]
n6.children=[n7]
def print_rec(node):
print node
if not node.children: return
for c in node.children:
printer(c)
, как я могу написать print_rec метод без использования рекурсии?
Это прекрасно работает. Но есть ли более «простой» (простой в освоении) способ сделать это? – Kipi
@Kipi Well ... recursion ;-) – uselpa
'if not node.children: continue' бессмысленно - когда' node.children' - пустой список/кортеж, тело for после него просто не выполняется. – GingerPlusPlus