二叉树交换左右子树

二叉树中交换左右子树只能通过先序或后序实现
代码如下:

//交换左右二叉树;先序 
void Exchange(BitTree *bt)
{
	if(bt->lchild==NULL&&bt->rchild==NULL)
		;
	else    
	{
		BitTree *temp=bt->lchild;
		bt->lchild=bt->rchild;
		bt->rchild=temp;
		if(bt->lchild)    		
			Exchange(bt->lchild);
		if(bt->rchild)
			Exchange(bt->rchild);
	}
}


//交换左右二叉树;后序 
void Exchange(BitTree *bt)
{
	if(bt->lchild==NULL&&bt->rchild==NULL)
		;
	else   
	{
	if(bt->lchild)    		
		Exchange(bt->lchild);
	if(bt->rchild)
		Exchange(bt->rchild);
		BitTree *temp=bt->lchild;
		bt->lchild=bt->rchild;
		bt->rchild=temp;
	}
}
发布了9 篇原创文章 · 获赞 7 · 访问量 1923

猜你喜欢

转载自blog.csdn.net/weixin_43785097/article/details/103153929