1vector<int> inorderTraversal(TreeNode*root) {2vector<int>rVec;3stack<TreeNode *>st;4TreeNode *tree =root;5while(tree || !st.empty())6{7if(tree)8{9st.push(tree);10tree = tree->left;11}12else13{14tree =st.top();15rVec.push_back(tree->val);16st.pop();17tree = tree->...
1/**2* Definition for binary tree3* struct TreeNode {4* int val;5* TreeNode *left;6* TreeNode *right;7* TreeNode(int x) : val(x), left(NULL), right(NULL) {}8* };9*/10classSolution {11public:12vector<int> inorderTraversal(TreeNode *root) {13vector<int>ret;14if(root ==...
classSolution {public: vector<int> preorderTraversal(TreeNode *root) { vector<int>res; stack<TreeNode *>s;if(root == NULL){//空树returnres; } s.push(root);//放树根while(!s.empty()){ TreeNode*cc =(); s.pop(); res.push_back(cc->val);//访问根if(cc->right !=NULL){ s.p...
public List<Integer> preorderTraversal(TreeNode root) { List<Integer> list = new ArrayList<>(); preorderTraversalHelper(root, list); return list; } private void preorderTraversalHelper(TreeNode root, List<Integer> list) { if (root == null) { return; } list.add(root.val); preorderTrav...
17 preorderTraversal(root->right); 18 return v; 19 } 20 vector<int> v; 21 }; 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 非递归 1 /** 2 * Definition for binary tree
Construct Binary Tree from Preorder and Inorder Traversal 题目描述(中等难度) 根据二叉树的先序遍历和中序遍历还原二叉树。 解法一 递归 先序遍历的顺序是根节点,左子树,右子树。中序遍历的顺序是左子树,根节点,右子树。 所以我们只需要根据先序遍历得到根节点,然后在中序遍历中找到根节点的位置,它的左边就...
15、课程:树(下).10、练习—Iterative Postorder Traversal -- -- 10:33 App 15、课程:树(下).7、练习—Iterative Get和Iterative Add 2 -- 12:36 App 15、课程:树(下).13、练习—Construct Binary Tree from Preorder and Inorder Traversal 1 -- 9:07 App 15、课程:树(下).3、练习—Floor and...
Morris traversal: My code: /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */publicclassSolution{publicList<Integer>preorderTraversal(TreeNoderoot){List<Integer>ret=newArrayList<...
public:vector<int>preorderTraversal(TreeNode*root){vector<int>result;stack<TreeNode*>st;if(root==NULL)returnresult;st.push(root);while(!st.empty()){TreeNode*top=st.top();st.pop();result.push_back(top->val);if(top->right)st.push(top->right);if(top->left)st.push(top->left);}...
Binary tree traversal: Preorder, Inorder, and Postorder In order to illustrate few of the binary tree traversals, let us consider the below binary tree: Preorder traversal: To traverse a binary tree in Preorder, following operations are carried-out (i) Visit the root, (ii) Traverse the le...