题目:输入一颗二元查找树,将该树转换为它的镜像,即在转换后的二元查找树中,左子树的结点都大于右子树的结点。
例如输入:
8
/ \
6 10
/\ /\
5 7 9 11
输出:
8
/ \
10 6
/\ /\
11 9 7 5
这道题就是在中序遍历的基础上交换左右子树就可以达到目的,直接上代码了....
struct treenode{ int data; treenode *l; treenode *r; }; void swap(treenode *&t){ treenode *temp; temp=t->l; t->l=t->r; t->r=temp; if(t->l) swap(t->l); if(t->r) swap(t->r); }