⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bitreetraverse.h

📁 编写程序
💻 H
字号:
//遍历二叉树
//前序遍历
void PreOrder(BiTreeNode *t,void Visit(DataType item))
{	
	if(t!=NULL)
	{	
		Visit(t->data);
		PreOrder(t->leftChild,Visit);
		PreOrder(t->rightChild,Visit);
	}
}

//中序遍历
void InOrder(BiTreeNode *t,void Visit(DataType item))
{	
	if(t!=NULL)
	{		
		InOrder(t->leftChild,Visit);
		Visit(t->data);
		InOrder(t->rightChild,Visit);
	}
}

//后序遍历
void PostOrder(BiTreeNode *t,void Visit(DataType item))
{	
	if(t!=NULL)
	{	
		PostOrder(t->leftChild,Visit);
		PostOrder(t->rightChild,Visit);
		Visit(t->data);
	}
}

//撤销二叉树
void Destroy(BiTreeNode **root)
{	
	if((*root)->leftChild!=NULL&&(*root)!=NULL)
		Destroy(&(*root)->leftChild);
	if((*root)->rightChild!=NULL&&(*root)!=NULL)
		Destroy(&(*root)->rightChild);
	
	free(*root);
}

//打印二叉树
void PrintBiTree(BiTreeNode *bt,int n)
{	
	int i;
	
	if(bt==NULL)
		return;
		
	PrintBiTree(bt->rightChild,n+1);
	
	for(i=0;i<n;i++)
		printf(" ");
	if(n>0)
	{	
		printf("---");
		printf("%c\n",bt->data);
	}
	
	PrintBiTree(bt->leftChild,n+1);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -