2024-02-18发表2024-02-18更新LeetCode每日一题1 分钟读完 (大约160个字)589. N 叉树的前序遍历N 叉树的前序遍历 难度: easy 原始链接: https://leetcode.cn/problems/n-ary-tree-preorder-traversal 标签: 前序遍历 解法一: 递归go1234567891011121314151617181920212223/** * Definition for a Node. * type Node struct { * Val int * Children []*Node * } */func preorder(root *Node) []int { ans := []int{} var dfs func(node *Node) dfs = func(node *Node) { if node == nil { return } ans = append(ans, node.Val) for _, child := range node.Children { dfs(child) } } dfs(root) return ans} 解法二: 迭代go123456789101112131415161718192021222324/** * Definition for a Node. * type Node struct { * Val int * Children []*Node * } */func preorder(root *Node) []int { ans := []int{} if root == nil { return ans } stack := []*Node{root} for len(stack) > 0 { node := stack[len(stack)-1] stack = stack[:len(stack)-1] ans = append(ans, node.Val) for i := len(node.Children) - 1; i >= 0; i-- { stack = append(stack, node.Children[i]) } } return ans}589. N 叉树的前序遍历https://wuhunyu.top/leetcode/2024/02/n-ary-tree-preorder-traversal/index.html作者wuhunyu发布于2024-02-18更新于2024-02-18许可协议#前序遍历