二叉树的相关面试题 <三>---------二叉树的镜像

原创 2017年01月03日 23:34:57

题目:输入一个二叉树,输出它的镜像。

解题思路:求树的镜像就是遍历树的同时交换非叶子节点的左右节点。

前序遍历,当当前节点的左右子树节点不为空时,交换左右节点。

镜像和原图对比图为:


第一次递归:


代码为:

void _BinaryTreeMirror(Node* root)
	{
		if(root==NULL)
			return;
		if(root->_left ==NULL&&root->_right ==NULL) //叶子节点
			return;
		Node* tmp=root->_left ;
		root->_left =root->_right ;
		root->_right =tmp;
		_BinaryTreeMirror(root->_left );
		_BinaryTreeMirror(root->_right );
	}






版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

剑指offer面试题19:二叉树的镜像

题目:请完成一个函数,输入一个二叉树,该函数输出他的镜像树。 算法分析:             求一棵树的镜像过程:我们先前序遍历这棵树的每一个节点,如果遍历到节点有子节点,就交换它的两...

面试题19:二叉树的镜像

剑指offer面试题19:二叉树的镜像题目描述:请完成一个函数,该函数输出二叉树的镜像 function BinaryTree(){ var Node = function(k...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

剑指offer 面试题19 二叉树的镜像

剑指offer 面试题19 二叉树的镜像 请完成一个函数,输入一个二叉树,该函数输出它们的镜像。 (反转二叉树 mirrorBinTree, reverseBinTree) package ...

数据结构面试题/求一棵二叉树的镜像

求树的镜像的过程其实是在遍历树的同时交换非叶节点的左右子节点。 二叉树的节点定义如下:struct BinaryTreeNode //创建树中的每个结点 { BinaryTreeNod...

【剑指offer】面试题27:二叉树的镜像

题目操作给定的二叉树,将其变换为源二叉树的镜像。思路求一棵树的镜像的过程:先前序遍历这棵树的每个节点,如果遍历到的节点有子节点,就交换它的两个子节点。当交换完所有的左右子节点之后,就得到了树的镜像。代...

剑指Offer:面试题19 二叉树的镜像

/* 二叉树的镜像: 请完成一个函数,输入一个二叉树,该函数输出它的镜像。 输入: 输入可能包含多个测试样例,输入以EOF结束。 对于每个测试案例,输入的第一行为一个整数n(0 Ci=’d’表示第...

剑指Offer----面试题19:二叉树的镜像

题目: 请完成一个函数,输入一个二叉树,该函数输出它的镜像。 方法一: 分析:镜像无非就是让二叉树每一个结点的左孩子和右孩子交换位置,显然,这要用到递归的知识。 ...

剑指offer-面试题 19:二叉树的镜像

面试题 19:二叉树的镜像 题目:请完成一个函数,输入一个二叉树,该函数输出它的镜像。

剑指offer_面试题19_二叉树的镜像

题目:请完成一个函数,输入一个二叉树,该函数输出它的镜像。 解题方法:遇到复杂问题,可以通过画图、举例等方法,来让自己加深理解。思路往往就在你一步步的分析之中。 思路:遍历这颗树的每个结点,如果遍历到...

【剑指offer】面试题19:二叉树的镜像

题目 请完成一个函数,输入一个二叉树,该函数输出它的镜像。 思路先画图观察二叉树的镜像的特点。 1.源二叉树     8     / \     6 10    / \ / \ ...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)