binsorttree.h

来自「这里我在学习数据结构时的练习,主要是二叉排序树的基本操作」· C头文件 代码 · 共 45 行

H
45
字号
///////////////////////////////////////////////////////////////
//
//  文 件 名: BinSortTree.h
//  创 建 者  刘志祥
//  创建时间: 2004-9-1
//  功能描述 二叉排序树的基本操作
//
/////////////////////////////////////////////////////////////////

#include <iostream.h>

struct BinNode
{
	int data;
	BinNode *lchild;
	BinNode *rchild;
	BinNode():lchild(NULL),rchild(NULL){}
	BinNode(int d,BinNode *l=NULL,BinNode *r=NULL):data(d),lchild(l),rchild(r){}

};

class BinSortTree
{
private:
	BinNode *root;
	int SearchBST(BinNode *&T,int x,BinNode *f,BinNode *&p);
	int InsertBST(BinNode *&T,int x);
	int DeleteBST(BinNode *&T,int x);
	void DeleteNode(BinNode *&T);
	void print(BinNode *T);
public:
	BinSortTree():root(NULL){}
	BinSortTree(int a[],int n);
	int InSert(int x){
	 return	InsertBST(root,x);
	}
	int Delete(int x){
	return	DeleteBST(root,x);
	}
	void print(){
	    print(root);
		cout<<endl;
	}
};

⌨️ 快捷键说明

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