c++ - c语言 指针问题
阿神
阿神 2017-04-17 13:51:46
0
1
459

对有两个节点的二叉树右旋时出错(根节点key为8,左子树key为5),想对8右旋,运行到注释哪里就出问题了,希望root->parent指向的地址改为root_old->parent指向的地址,但是被指针弄晕了,当前root->parent指向的是root本身,执行过后就变成root就变null了,麻烦大家看看,帮我弄清楚

运行前后截图:

    struct node
    {
        T key;
        node *left, *right,*parent;
    }*root;


    void rotateR(node *&root)
    {
        node *root_old = root;    
        root = root->left;
        root_old->left = root->right;
        root->right= root_old;
        root->parent= root_old->parent; //
        root_old->parent=root;
        root_old->left->parent = root_old;
    }

    void splay(node *n)
    {
        。。。。
    }


};
阿神
阿神

闭关修行中......

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!