이 진 트 리 의 거울 을 구하 세 요 [매일 한 문제]

제목: 이 진 트 리 의 미 러 해결 방법 을 구 합 니 다. 나 무 를 만 든 후 각 노드 의 좌우 아 이 를 교환 합 니 다.
//  
    void _GetBinaryMirror(Node* pRoot)
    {
        if(pRoot)
        {
            std::swap(pRoot->_pLeft ,pRoot->_pRight );
            _GetBinaryMirror(pRoot->_pLeft );
            _GetBinaryMirror(pRoot->_pRight );
        }
    }
    //   
    void _GetBinaryMirror_Nor(Node* pRoot)
    {
        queue<Node*> q;
        q.push(pRoot);
        while(!q.empty())
        {
            Node* pCur = q.front();
            std::swap(pCur->_pLeft ,pCur->_pRight );
            if(pCur->_pLeft )
                q.push(pCur->_pLeft );
            if(pCur->_pRight )
                q.push(pCur->_pRight );
            q.pop();
        }
    }

좋은 웹페이지 즐겨찾기