LeetCode 106. 已知中序后序 求二叉树
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                LeetCode 106. 已知中序后序 求二叉树
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                文章目錄
- 1. 題目
- 2. 解題
- 2.1 遞歸
- 2.2 循環
 
 
1. 題目
 類似題目LeetCode 105. 已知前序&中序 求二叉樹
2. 解題
2.1 遞歸
遞歸法,后序最后一個是根節點
 
2.2 循環
class Solution { //別人寫的 循環 public:TreeNode* buildTree(vector<int>& in, vector<int>& post) {if (in.empty()) return NULL;stack<TreeNode*> S;TreeNode *root = new TreeNode(post.back()), *cur = root;S.push(root);for (int i = post.size() - 2, j = in.size() - 1; i >= 0; i--) {TreeNode *back = NULL, *cur = new TreeNode(post[i]);while (!S.empty() && S.top()->val == in[j]) {back = S.top(), S.pop(), j--;}if (back)back->left = cur;elseS.top()->right = cur;S.push(cur);}return root;} };總結
以上是生活随笔為你收集整理的LeetCode 106. 已知中序后序 求二叉树的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: python中倒着输出输入值_十五、深入
- 下一篇: matlab玫瑰,网上收到的用matla
