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

📄 texttree.c

📁 这个程序是用来实现二叉树的一些最基本的操作。如前序
💻 C
字号:

#include"stdio.h"
#include"stdlib.h"

typedef char DataTypeT;

#include"Tree.h"
void Visit(BiTreeNode *t)
{
	printf("%c", t->data);
}




void main()
{
	BiTreeNode *root1, *root2, *p, *q;

	char x = 'B';
	int i = 0;
	int length = 0;

	Initiate(&root1);

	p = InsertLeftNode(root1,'A');
	q = p;
	p = InsertLeftNode(p,'B');
	p = InsertLeftNode(p,'D');
	p = InsertRightNode(p,'G');
	p = InsertRightNode(q,'C');

	q = p;

	p = InsertLeftNode(p,'E');
	p = InsertRightNode(q,'F');


	printf("\n二叉树1的缩进图:\n");
	PrintBiTree(root1->left,2);

	printf("\n二叉树1的深度是:  ");
	GetLength(root1->left,&i,length);
	printf("%d",i);
/*
	printf("\n前序遍历1:\n");
	PreOrder(root1->left, Visit);
	printf("\n");

	printf("\n前序遍历2:\n");
	PreOrder2(root->left, Visit);
	printf("\n");

	printf("\n中序遍历:\n");
	InOrder(root->left, Visit);
	printf("\n");

	printf("\n后序遍历:\n");
	PostOrder(root->left, Visit);
	printf("\n");

	printf("\n层序遍历:\n");
	StraOrder(root->left,Visit);
	printf("\n");




	printf("\n搜寻二叉树中是否有字符 %c ....\n", x);
	p = NULL;
	p = Search(root->left,x);
	if( p == NULL )
		printf("\n 二叉树中没有字符 %c !\n", x);
	else
		printf("\n 二叉树中有字符 %c !\n", p->data);


	printf("\n二叉树删除结点 %c 的左子树之后的缩进图:\n", root->left->right->data);
	DeleteRightTree(root->left->right);
	PrintBiTree(root->left,2);

	printf("\n搜寻二叉树中是否有字符 %c ....\n", x);
	p = NULL;
	p = Search(root->left,x);
	if( p == NULL )
		printf("\n 二叉树中没有字符 %c !\n", x);
	else
		printf("\n 二叉树中有字符 %c !\n", p->data);
*/

	Initiate(&root2);

	p = InsertLeftNode(root2,'a');
	q = p;
	p = InsertLeftNode(p,'b');
	p = InsertLeftNode(p,'d');
	p = InsertRightNode(p,'g');
	p = InsertRightNode(q,'c');

	q = p;

	p = InsertLeftNode(p,'e');
	p = InsertRightNode(q,'f');


	printf("\n二叉树2的缩进图:\n");
	PrintBiTree(root2->left,2);	

	i = 0;
	printf("\n二叉树2的深度是:  ");
	GetLength(root2->left,&i,length);
	printf("%d",i);

	printf("\n二叉树3(在 树 1 的 C 处 1 和 2 连起来):\n");
	p = InsertLeftTree(root1->left->left,root2->left);

	PrintBiTree(root1->left,2);
	printf("\n");

	i = 0;
	printf("\n二叉树3的深度是:  ");
	GetLength(root1->left,&i,length);
	printf("%d\n",i);

	Destroy(&root1);
	Destroy(&root2);
}

⌨️ 快捷键说明

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