加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Binary Tree Inorder Traversal

发布时间:2020-12-14 04:45:34 所属栏目:大数据 来源:网络整理
导读:Given a binary tree,return the? inorder ?traversal of its nodes‘ values. Example:Input: [ 1 , null , 2 , 3 ] 1 2 / 3 Output: [ 1 , 3 , 2 ] Follow up:?Recursive solution is trivial,could you do it iteratively? code class Solution{ public :

Given a binary tree,return the?inorder?traversal of its nodes‘ values.

Example:

Input: [1,null,2,3]
   1
         2
    /
   3

Output: [1,3,2]

Follow up:?Recursive solution is trivial,could you do it iteratively?

code

class Solution
{
public:
    vector<int> inorderTraversal(TreeNode* root)
    {
        if(root==nullptr)
            return {};

        vector<int> res;
        stack<TreeNode *> stack;
        TreeNode *tmp=root;
        while(tmp!=nullptr||!stack.empty())
        {
            while(tmp!=nullptr)
            {
                stack.push(tmp);
                tmp=tmp->left;
            }
            if(!stack.empty())
            {
                tmp=stack.top();
                res.emplace_back(tmp->val);
                stack.pop();
                tmp=tmp->right;
            }
        }
        return res;
    }
};

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读