leetcode 日经贴,Cpp code -Binary Tree Preorder Traversal

来源:互联网 发布:达索plm软件名字 编辑:程序博客网 时间:2024/06/05 23:05

Binary Tree Preorder Traversal

/** * 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> preorderTraversal(TreeNode* root) {        vector<int> preorder;        stack<TreeNode*> st;        while (root) {            preorder.push_back(root->val);            st.push(root);            root = root->left;        }        while (!st.empty()) {            root = st.top()->right;            st.pop();            while (root) {                preorder.push_back(root->val);                st.push(root);                root = root->left;            }        }        return preorder;    }};


0 0