结构推理 写一个算法,创建一个给定二叉树的镜像(把所有的左子女与对应的右子女互换)。
【正确答案】(1)数据结构
   采用二叉树的链接表示。
   (2)思路
   按根、左子树、右子树(先根)的顺序周游给定二叉树,同时,按根、右子树、左子树的顺序创建一棵新的二叉树。
   (3)算法
   BinTree create mirror(BinTree t){  /*创建二叉树t的镜像二叉树*/
       BinTree mirror;
       if(t==NULL)return NULL;
       mirror=(BinTree)malloc(sizeof(struct BinTreeNode));
       mirror->info=t->info;
       mirror->rlink=create mirror(t->llink);
       mirror->llink=create mirror(t->rlink);
       return mirror;
   }
   (4)代价分析
   该算法访问每个结点各一次,时间代价为O(n),空间代价为O(h)。
【答案解析】