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

📄 find.h

📁 一个B-树实现与编辑
💻 H
字号:
Status Search(BTree &p,int k)         //查找k在p中的位置
{
	int j;
	
	for(j=1;j<=p->keynum&&k>=p->key[j];j++);
	return(j-1);
}   //Search


Result SearchBTree(BTree T,int k)
{
	//在m阶B-树T上查找关键字,返回结果(pt,i,tag).若查找成功,则特征值tag=1
	//指针pt所指结点中第i个关键字等于K;否则返回特征值tag=0,等于k的关键字应插入
	//指针pt指的结点第i和第i+1个关键字之间
	BTree p,q;
	bool found;
	int i;
	Result v;
	p=T;q=NULL;found=FALSE;i=0;
	while(p&&!found)
	{
		i=Search(p,k);    //在p->recptr[1...keynum]中查找,i使p->key[i]<=k<p->key[i+1]
		if(i>0&&p->key[i]==k)found=TRUE;    //找到时,令found=TRUE
		else
		{q=p;p=p->ptr[i];/*没找到时,走向第i棵子树*/
		}
	}//while
		if(found)              //找到时
		{
			v.pt=p;
			v.i=i;
			v.tag=1;
			return(v);
		}
		else                 //没有找到时
		{
			v.pt=q;
			v.i=i;
			v.tag=0;
			return(v);
	}
}    //SearchBTree



⌨️ 快捷键说明

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