笔果题库
数据结构
VIP题库
搜题找答案,就上笔果题库
给定一组关键字(34,78,65,45,12,47,74),请写出查找12的二分查找过程。
搜题找答案,就上笔果题库
索引顺序查找又称为______,是一种介于顺序查找和二分查找之间的查找方法。
搜题找答案,就上笔果题库
二叉排序树的根指针为bt,试写一个算法输出二叉排序树中最大的关键字值。
搜题找答案,就上笔果题库
已知有序表为(3,5,7,8,11,15,17,22,23,27,29,33),用二分查找法查找值为27时,所需的比较次数为()
搜题找答案,就上笔果题库
设有100个元素,用二分查找法进行查找时,最小比较次数是()
搜题找答案,就上笔果题库
假定有k个关键字互为同义词,若采用线性探查法将这些同义词插入到散列表中,至少要进行多少次探查?
搜题找答案,就上笔果题库
在散列表长为n,散列函数H(key)=key%p,则p最好取______。
搜题找答案,就上笔果题库
下面的算法实现从二叉排序树中删除一个结点,不把以该结点为根的子树都删去,并且还能保证删除后所得的二叉树仍然满足BST性质。请仔细阅读程序,在空缺处填人合适的内容,使其成为完整的算法。 VoidDelBSTNode(BSTree*Tptr,KeyTypekey) {//在二叉排序树Tptr中删去关键字为key的结点 BSTNode*parent=NULL,*p=*Tptr,*q,child; while(p){//从根开始查找关键字为key的待删结点 if(____)break;//已找到,跳出查找循环 parent=p;//parent指向*p的双亲 p=(key<p一>key)?p一>lchild:p一>rchild;//在*p的左或右子树中继续找 } if(____)return;//找不到被删结点则返回 q=p;//q记住被删结点*p if(q一>lchild&&_____)//*q的两个孩子均非空,故找*q的中序后继*p for(parent=q,p=q一>rchild;p一>lchild;parent=p,p=p—>lchild); child=(p—>lchild)?p-->lchild:p—>rchild; if(!parent)//*p的双亲为空,说明*p为根,删*p后应修改根指针 *Tptr=child; else{//*p不是根,将*p的孩子和*p的双亲进行连接,*p从树上被摘下 if(p==parent—>lchild)//*p是双亲的左孩子 _____;//*child作为*parent的左孩子 elseparent一>rchild=child;//*child作为*parent的右孩子 if(p!=q) q一>key=p—>key; }//endif free(____);//释放*p占用的空间 }
搜题找答案,就上笔果题库
在内存中使用的B树通常都是3阶的,而不使用更高阶的,为什么?
搜题找答案,就上笔果题库
对于二叉排序树,如果______遍历此二叉树,那么所得到的遍历序列将是一个增序序列。