struct TreeNode* Mirror(struct TreeNode* pRoot ) {
    // write code here
    if(pRoot == NULL)
        return pRoot;
    struct TreeNode* tmp = NULL;
    tmp = pRoot->left;
    pRoot->left = pRoot->right;
    pRoot->right = tmp;

    Mirror(pRoot->left);
    Mirror(pRoot->right);

    return pRoot;
}