二叉树反转(转换为原来的镜像二叉树)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jirryzhang/article/details/83411055
struct TreeNode
{
    TreeNode(int _val):val(_val){}
    TreeNode *left;
    TreeNode *right;
private:
    int val;
}

void reverse(TreeNode *root)
{
    if(!root)
        return;
    queue<TreeNode *> q;
    q.push(root);
    TreeNode *p,*tmp;
    while(!q.empty()){
        p=q.front();
        q.pop();
        
        tmp=p->left;
        p->left=p->right;
        p->right=tmp;
        
        if(p->left)
            q.push(p->left);
        if(p->right)
            q.push(p->right);
    }
}

猜你喜欢

转载自blog.csdn.net/jirryzhang/article/details/83411055
今日推荐