N叉树的前序遍历

Problem: 589. N 叉树的前序遍历

文章目录

思路

前序遍历,遇到空节点返回

解题过程

对每个节点进行遍历

Code

C++ 复制代码
/*
// 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:
    void traversal(Node* cur, vector<int>& vec) 
    {//cur当前遍历节点,vec储存值
        if (cur == NULL) 
            return;
        vec.push_back(cur->val);//当前值储存(val节点所代表的值)(***把这一行移动到循环后面就变为后续遍历***)

        for (Node* child : cur->children) //遍历每个子节点
            traversal(child, vec);(***这个后面***)
        
    }

    vector<int> preorder(Node* root) 
    {
        vector<int> result;         //储存结果
        traversal(root, result);
        return result;
    }
};
相关推荐
ZPC821014 小时前
docker 镜像备份
人工智能·算法·fpga开发·机器人
ZPC821014 小时前
docker 使用GUI ROS2
人工智能·算法·fpga开发·机器人
琢磨先生David14 小时前
Day1:基础入门·两数之和(LeetCode 1)
数据结构·算法·leetcode
颜酱15 小时前
栈的经典应用:从基础到进阶,解决LeetCode高频栈类问题
javascript·后端·算法
多恩Stone15 小时前
【C++入门扫盲1】C++ 与 Python:类型、编译器/解释器与 CPU 的关系
开发语言·c++·人工智能·python·算法·3d·aigc
生信大杂烩15 小时前
癌症中的“细胞邻域“:解码肿瘤微环境的空间密码 ——Nature Cancer 综述解读
人工智能·算法
蜡笔小马15 小时前
21.Boost.Geometry disjoint、distance、envelope、equals、expand和for_each算法接口详解
c++·算法·boost
m0_5312371715 小时前
C语言-数组练习进阶
c语言·开发语言·算法
超级大福宝16 小时前
N皇后问题:经典回溯算法的一些分析
数据结构·c++·算法·leetcode
Wect16 小时前
LeetCode 530. 二叉搜索树的最小绝对差:两种解法详解(迭代+递归)
前端·算法·typescript