zoukankan      html  css  js  c++  java
  • [LeetCode] Binary Tree Preorder Traversal

    Given a binary tree, return the preorder traversal of its nodes' values.

    For example:
    Given binary tree {1,#,2,3},

       1
        
         2
        /
       3

    return [1,2,3].

    递归

    /**
     * Definition for a binary tree node.
     * struct TreeNode {
     *     int val;
     *     TreeNode *left;
     *     TreeNode *right;
     *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
     * };
     */
    class Solution {
    public:
        vector<int> preorder;
        vector<int> preorderTraversal(TreeNode* root) {
            if (root == nullptr)
                return preorder;
            preorder.push_back(root->val);
            preorderTraversal(root->left);
            preorderTraversal(root->right);
            return preorder;
        }
    };
    // 0 ms

    迭代

    /**
     * Definition for a binary tree node.
     * struct TreeNode {
     *     int val;
     *     TreeNode *left;
     *     TreeNode *right;
     *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
     * };
     */
    class Solution {
    public:
        vector<int> preorder;
        vector<int> preorderTraversal(TreeNode* root) {
            if (root == nullptr)
                return preorder;
            stack<TreeNode*> stk;
            while (root != nullptr || !stk.empty()) {
                if (root != nullptr) {
                    stk.push(root);
                    preorder.push_back(root->val);
                    root = root->left;
                }
                else {
                    root = stk.top();
                    stk.pop();
                    root = root->right;
                }
            }
            return preorder;
        }
    };
    // 0 ms
  • 相关阅读:
    golang linux安装
    vscode 插件
    windows访问eks pods
    go mod包管理
    beego创建项目
    Atcoder ARC-125
    AtCoder AGC003 简要题解
    Python 字符串转成变量名
    13_Go基础(binary)
    12_Go基础(iota)
  • 原文地址:https://www.cnblogs.com/immjc/p/7500534.html
Copyright © 2011-2022 走看看