📄 bitreetraverse.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 + -