diff options
Diffstat (limited to 'other/binary_tree_inorder.cpp')
-rw-r--r-- | other/binary_tree_inorder.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/other/binary_tree_inorder.cpp b/other/binary_tree_inorder.cpp new file mode 100644 index 0000000..a677d27 --- /dev/null +++ b/other/binary_tree_inorder.cpp @@ -0,0 +1,23 @@ +#include "leetcode.h" + +class Solution { +public: + vector<int> inorderTraversal(TreeNode *root) { + vector<int> ans; + stack<TreeNode *> s; + TreeNode *curr = root; + while (curr || !s.empty()) { + while (curr) { + s.push(curr); + curr = curr->left; + } + curr = s.top(); + s.pop(); + ans.push_back(curr->val); + curr = curr->right; + } + return ans; + } +}; + +int main() { Solution obj; } |