题目链接https://leetcode-cn.com/problems/n-ary-tree-preorder-traversal/


解题代码
/*
// Definition for a Node.
class Node {
public:
int val;
vector<Node*> children;
Node() {}
Node(int _val) {
val = _val;
}
Node(int _val, vector<Node*> _children) {
val = _val;
children = _children;
}
};
*/
class Solution {
public:
vector<int> preorder(Node* root) {
vector<int> preNum;
pre(root, preNum);
return preNum;
}
void pre(Node* root, vector<int>& nums){
if(root==NULL){
return;
}
nums.push_back(root->val);
if(root->children.size()!=0){
int n = root->children.size();
for(int i=0; i<n; i++){
pre(root->children[i], nums);
}
}
}
};
运行结果

该博客主要介绍了如何解决LeetCode上的N-ary树前序遍历问题,提供了一种使用递归实现的解决方案。代码中定义了Node类以表示树节点,并实现了Solution类,包含preorder方法进行前序遍历。方法首先将根节点的值加入结果数组,然后递归遍历所有子节点。
1021

被折叠的 条评论
为什么被折叠?



