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;
    }
};
相关推荐
im_AMBER6 分钟前
Leetcode 108 交换链表中的节点
数据结构·笔记·学习·算法·leetcode·链表
2301_765703146 分钟前
C++代码风格检查工具
开发语言·c++·算法
TracyCoder12314 分钟前
LeetCode Hot100(14/100)——73. 矩阵置零
算法·leetcode·矩阵
啊阿狸不会拉杆14 分钟前
《数字信号处理》第 4 章-快速傅里叶变换 (FFT)
数据结构·人工智能·算法·机器学习·信号处理·数字信号处理·dsp
hrrrrb15 分钟前
【算法设计与分析】算法概述
开发语言·python·算法
xqqxqxxq17 分钟前
认识数据结构之——图 构建图与应用
数据结构·python·算法
FMRbpm20 分钟前
邻接矩阵练习1--------LCP 07.传递信息
数据结构·c++·算法·leetcode·深度优先·新手入门
啊阿狸不会拉杆20 分钟前
《数字信号处理》第 1 章 离散时间信号与系统
人工智能·算法·机器学习·信号处理·数字信号处理·dsp
ʚB҉L҉A҉C҉K҉.҉基҉德҉^҉大21 分钟前
C++安全编程指南
开发语言·c++·算法
啊阿狸不会拉杆22 分钟前
《数字信号处理》第 2 章 - z 变换与离散时间傅里叶变换(DTFT)
人工智能·算法·机器学习·信号处理·数字信号处理·dsp