diff options
Diffstat (limited to 'other/binary_tree_preorder.cpp')
-rw-r--r-- | other/binary_tree_preorder.cpp | 28 |
1 files changed, 0 insertions, 28 deletions
diff --git a/other/binary_tree_preorder.cpp b/other/binary_tree_preorder.cpp deleted file mode 100644 index 7bba435..0000000 --- a/other/binary_tree_preorder.cpp +++ /dev/null @@ -1,28 +0,0 @@ -#include "leetcode.h" - -class Solution { -public: - vector<int> preorderTraversal(TreeNode *root) { - // morris traversal - vector<int> nodes; - while (root) { - if (root->left) { - TreeNode *pre = root->left; - while (pre->right && pre->right != root) - pre = pre->right; - if (!pre->right) { - pre->right = root; - nodes.push_back(root->val); - root = root->left; - } else { - pre->right = NULL; - root = root->right; - } - } else { - nodes.push_back(root->val); - root = root->right; - } - } - return nodes; - } -}; |