java递归实现镜像二叉树
输出给定二叉树的镜像二叉树?
思路:镜像二叉树,顾名思义左右孩子与原来树对称。
所以,就是从根结点开始不断交换左右孩子,
创新互联建站专注于企业全网营销推广、网站重做改版、阜新网站定制设计、自适应品牌网站建设、H5网站设计、电子商务商城网站建设、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为阜新等各大城市提供网站开发制作服务。
public class BinnaryTree {
//交换左右子树
class TreeNode{
int val;//数据域
TreeNode left=null;
TreeNode right=null;
public TreeNode(int val){//构造函数
this.val=val;
}
}
public void Mirror(TreeNode root) {
if(root==null){//没有结点
return;
}
if(root.left==null&&root.right==null){//只有一个根结点无孩子
return;
}
//有孩子
//交换左右孩子 先处理根
TreeNode temp=root.left;
root.left=root.right;
root.right=temp;
//递归
Mirror(root.left);
Mirror(root.right);
}
}
本文名称:java递归实现镜像二叉树
文章源于:http://azwzsj.com/article/ppcjpp.html