【leetcode 94. 二叉樹的中序遍歷】解題報告
阿新 • • 發佈:2019-05-01
stack traversal roo tree order targe blank span etc
前往二叉樹的:前序,中序,後序 遍歷算法
方法一:遞歸
vector<int> res; vector<int> inorderTraversal(TreeNode* root) { if (!root) return res; if (root->left) inorderTraversal(root->left); res.push_back(root->val); if (root->right) inorderTraversal(root->right);return res; }
方法二:非遞歸
vector<int> inorderTraversal(TreeNode* root) { vector<int> res; if (!root) return res; stack<TreeNode*> S; TreeNode* p = root; while(p||!S.empty()) { if (p) { S.push(p); p=p->left; } else { p=S.top(); S.pop(); res.push_back(p->val); p=p->right; } } return res; }
【leetcode 94. 二叉樹的中序遍歷】解題報告