8-3.c

来自「这个是数据结构经典算法实现」· C语言 代码 · 共 45 行

C
45
字号
#include "stdio.h"
typedef char KeyType; /*假定关键字类型为整数*/
typedef struct node { /*结点类型*/
	KeyType key; /*关键字项*/
	/*其它数据域,InfoType视应用情况而定,下面不处理它*/
	struct node *lchild,*rchild;//左右孩子指针
} BSTNode;
typedef BSTNode * bitreptr; // bitreptr是二叉排序树的类型
int  Compare(int index1,int index2)
{
	if(index1>index2)
		return 1;
	else if(index1<index2)
		return -1;
	else 
		return 0;
}
bitreptr bst_search(bitreptr t,KeyType K)
{
	if(t==NULL)
		return(NULL);/*不成功时回送NULL作为标记*/
	else
		switch(Compare(K,t->key))
		{
			case 0:
				return(t);/*成功时回送指针t作为结果*/
			case 1:
				return(bst_search(t->lchild,K));/*在左子树上继续搜索*/
			case -1:
				return(bst_search(t->rchild,K));/*在右子树上继续搜索*/
		}
}

void Initial(bitreptr R)
{
	//初始化
}
void main()
{
	bitreptr tree,result;
	KeyType searched='a';
	Initial(tree);
	result=bst_search(tree,searched);	
}

⌨️ 快捷键说明

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