二叉树的镜像
输入一棵二叉树,把它变成它的镜像。
这题的思路通过画图就可以很快明白。本人就不画了,有兴趣可以买书来看。这里讲下怎么做。
如果一个节点有子节点交换2个节点.....就这么简单。
上代码:
void MirrorTree(BinaryTreeNode* pRoot) { if(pRoot == NULL) return; if(pRoot->p_left == NULL && pRoot->p_right == NULL) return; BinaryTreeNode* temp = pRoot->p_left; pRoot->p_left = pRoot->p_right; pRoot->p_right = temp; if( pRoot->p_left ) { MirrorTree(pRoot->p_left); } if(pRoot->p_right) { MirrorTree(pRoot->p_right); } }

浙公网安备 33010602011771号