智慧树数据结构答案2018知到数据结构答案章测试答案(2)

2018-12-23 23:35

else if (L.data[mid]>x) bisearch(L,low,mid-1,x); else

bisearch(L,mid+1,high,x); } }//bisearch

. A. A. mid< (low+high)/2 . B. mid=(low+high)/2 . C. mid>(low+high)/2; . D. mid!=(low+high); .

.5 5.设计算法判定给定二叉树是否为二叉排序树。 void BSTree(BiTree t,int &flag,int &last);//声明Status IsBSTree(BiTree t){ int flag = 1; int last =0; BSTree(t,flag,last); return flag;}void BSTree(BiTree t,int &flag,int &last)//取地址不需要返回值{ if(t->lchild&&flag) BSTree(t->lchild,flag,last);//遍历左子树 if(t->data.key>last&&flag) last = t->data.key;else flag=0;//last原为父节点值,但到了树叶节点后被树叶节点的key值覆盖,然后开始向上反馈keyif(t->rchild&&flag) } . A. BSTree(t->rchild,flag,last); . B. BSTree(t->lchild,flag,last); . C. BSTree(t->rchild,last,flag); . D. BSTree(t->lchild,last,flag); . .6 m阶B_树中的m是指?

. A. 每个结点至少有m棵子树 . B. 每个结点至多有m棵子树 . C. 非终端结点中关键字的个数 . D. m阶B_树的深度(或高度) . 第九章单元测试 .

总题数:61 1.设一组初始记录关键字序列为(50,40,95,20,15,70,60,45),则以增量d=4 的一趟希尔排序结束后前4条记录关键字为( )。 . A. 40,50,20,95 . B. 15,40,60,20 . C. 15,20,40,45 . D. 45,40,15,20 .

.2 2.快速排序方法在情况下最不利于发挥其长处。( )

. A. 要排序的数据量太大。 . B. 要排序的数据中含有多个相同值 . C. 要排序的数据已基本有序 . D. 要排序的数据个数为奇数 .

.3 一组记录的排序码为(46,79,56,38,40,84),则利用堆排序的方法建立的初始推为( )。

. A. 79,46,56,38,40,80 . B. 84,79,56,38,40,46 . C. 84,79,56,46,40,38 . D. 84,56,79,40,46,38 .

.4 设一组初始记录关键字序列为(25,50,15,35,80,85,20,40,36,70),其中含有5个长度为2的有序子表,则用归并排序的方法对该记录关键字序列进行一趟归并后的结果为( )。

. A. 15,25,35,50,20,40,80,85,36,70 . B. 15,25,35,50,80,20,85,40,70,36 . C. 15,25,35,50,80,85,20,36,40,70 . D. 15,25,35,50,80,20,36,40,70,85 .

.5 试以L.r[k+1]作为监视哨改写教科书10.2.1节中给出的直接插入排序算法。其中,L.r[1..k]为待排序记录且k=1; --i ) { if (L.r[i+1].key < L.r[i].key) { L.r[k+1] = L.r[i]; // 复制为监视哨for ( j=i+1; L.r[k+1].key > L.r[j].key; ++ j )L.r[j-1] = L.r[j]; // 记录前移}//end if }//end for } // InsertSort . A. A.L.r[j+1] = L.r[k+1]; . B. L.r[j] = L.r[k]; . C. L.r[j] = L.r[k+1]; . D. L.r[i] = L.r[k+1]; .

.6 1.编写算法,对n个关键字取整数值的记录序列进行整理,以使所有关键字为负值的记录排在关键字为非负值的记录之前,要求:(1)采用顺序存储结构,至多使用一个记录的辅助存储空间;(2)算法的时间复杂

度为O(n);void Divide(int a[ ],int n)//把数组a中所有值为负的记录调到非负的记录之前 {

low=0;high=n-1; while( ) {

while(low=0) high--; //以0作为虚拟的枢轴记录 a[low]<->a[high];

while(lowa[high]; }

}//Divide . A. low< =(high+1) . B. (low+1)< high . C. low!=high . D. low< high .

智慧树数据结构答案2018知到数据结构答案章测试答案

搜索薇芯松丛号,选修宝,得完整答案


智慧树数据结构答案2018知到数据结构答案章测试答案(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:精即兴评述技巧

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: