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;
    }
};
相关推荐
YGGP25 分钟前
【Golang】LeetCode 32. 最长有效括号
算法·leetcode
自然常数e1 小时前
字符函数和字符串函数
c语言·算法·visual studio
leaves falling1 小时前
c语言分数求和
算法
Das11 小时前
【机器学习】01_模型选择与评估
人工智能·算法·机器学习
星轨初途1 小时前
郑州轻工业大学2025天梯赛解题
c++·经验分享·笔记·算法·链表·剪枝
不忘不弃2 小时前
从字符串中提取数字
数据结构·算法
囊中之锥.2 小时前
《机器学习SVM从零到精通:图解最优超平面与软间隔实战》
算法·机器学习·支持向量机
必胜刻3 小时前
复原 IP 地址(回溯算法)
tcp/ip·算法·深度优先
YGGP3 小时前
【Golang】LeetCode 5. 最长回文子串
算法·leetcode
挖矿大亨3 小时前
C++中的赋值运算符重载
开发语言·c++·算法