class Solution {
public:
vector<int> inorderTraversal(TreeNode *root) {
stack<TreeNode*> stack;
vector<int> result;
if(root == NULL)
return result;
stack.push(root);
while(!stack.empty()){
TreeNode* node = stack.top();
if(node -> left == NULL && node -> right == NULL){
stack.pop();
result.push_back(node -> val);
}
else {
stack.pop();
if(node -> right != NULL)
stack.push(node -> right);
stack.push(node);
if(node -> left != NULL)
stack.push(node -> left);
node -> left = node -> right = NULL;
}
}
return result;
}
};
[LeetCode] Binary Tree Inorder Traversal
最新推荐文章于 2020-07-28 10:43:41 发布
本文介绍了一种使用栈实现二叉树中序遍历的方法。通过将节点压入栈中并根据左右子节点的存在与否调整遍历顺序,最终实现了有效的中序遍历过程。
1189

被折叠的 条评论
为什么被折叠?



