"""#遞迴法
# if root == none:
# return
# res =
# for leaf in root.children:
# res += self.preorder(leaf)
# return [root.val] + res #此處加法先後順序決定了是進行先序還是後序
#迭代法
if root ==
none
:return
queue =
res =
while queue:
curr = queue.pop(0)
if curr.children:
curr.children.reverse(
)#把當前節點的孩子逆置
queue.reverse(
)#把當前節點的兄弟逆置
queue += curr.children#逆置插入列表
queue.reverse(
)#總的逆置
return res
589 N叉樹的前序遍歷
給定乙個 n 叉樹,返回其節點值的前序遍歷。例如,給定乙個3叉樹 返回其前序遍歷 1,3,5,6,2,4 definition for a node.class node object def init self,val,children self.val val self.children chi...
多叉樹的前序遍歷 589 N叉樹的前序遍歷
給定乙個 n 叉樹,返回其節點值的前序遍歷。n叉樹的定義如下 class node node int val,vector children val val children children 例如給定乙個 3叉樹 3 2 4 5 6返回其前序遍歷 1,3,5,6,2,4 說明 遞迴法很簡單,你可以...
Leetcode589N叉樹的前序遍歷
給定乙個 n 叉樹,返回其節點值的前序遍歷。思路 發現了前序中序後序遍歷的非遞迴實現,肯定 definition for a node.class node node int val,vector children class solution s.push back node val return...