资源预览内容
第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
亲,该文档总共6页全部预览完了,如果喜欢就下载吧!
资源描述
数据结构(本)形考作业4 一、单项选择题(每小题2 分,共 40 分)题目 1 对线性表进行二分查找时,要求线性表必须()。 A.以顺序存储方式 B. 以顺序存储方式,且数据元素有序 C.以链接存储方式,且数据元素有序 D.以链接存储方式题目 2 采用顺序查找方法查找长度为n的线性表时,每个元素的平均查找长度为()。A. (n+1)/2 B. n C. n/2 D. (n-1)/2 题目 3 有一个长度为10 的有序表,按折半查找对该表进行查找,在等概率情况下查找成功的平均比较次数为()。A. 31/10 B. 29/10 C. 26/10 D. 29/9 题目 4 已知一个有序表为11,22,33,44,55,66,77,88,99, 则顺序查找元素55 需要比较() 次。A. 3 B. 6 C. 5 D. 4 题目 5 有数据 53,30,37,12,45,24,96,从空二叉树开始逐个插入数据来形成二叉排序树,若希望高度最小,应该选择的序列是()。A. 45,24,53,12,37,96,30 B. 12,24,30,37,45,53,96 C. 37,24,12,30,53,45,96 D. 30,24,12,37,45,96,53 题目 6 对于顺序存储的有序表5,12,20,26,37,42,46,50,64,若采用折半查找,则查找元素26的比较次数是()。A. 6 B. 3 C. 4 D. 5 题目 7 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 6 页 - - - - - - - - - 在所有的排序方法中,关键字比较的次数与记录初始排列秩序无关的是()。A. 直接插入排序B. 直接选择排序C. 冒泡排序D. 希尔排序题目 8 从未排序序列中依次取出元素与已经排好序的序列中的元素作比较。将其放入已排序序列的正确的位置上,此方法称为()。A. 选择排序B. 交换排序C. 插入排序D. 归并排序题目 9 依次将每两个相邻的有序表合并成一个有序表的排序方法称为()。A. 交换排序B. 插入排序C. 归并排序D. 选择排序题目 10 当两个元素出现逆序的时候就交换位置,这种排序方法称为()。A. 交换排序B. 插入排序C. 选择排序D. 归并排序题目 11 每次把待排序的区间划分为左、右两个子区间, 其中左区间中记录的关键字均小于等于基准记录的关键字, 右区间中记录的关键字均大于等于基准记录的关键字,这种排序称为 () 。A. 归并排序B. 堆排序C. 插入排序D. 快速排序题目 12 一组记录的关键字序列为(46,20,30,79,56,38,40,84,90,110 ),利用快速排序,以第一个关键字为分割元素,经过一次划分后结果为()。A. 20,30,40,38,46,79,56,84,90,100 B. 30,20,40,38,46,84,56,79,90,100 C. 20,30 38,40,46,56,79,84,90,100 D. 40 , 20,30,38 ,46,56,79,84,90,110 题目 13 在有序表 10,14 ,34,43,47,64,75,80,90 中,用折半查找法查找值80 时,经()次比较后查找成功。A. 5 B. 2 C. 3 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 6 页 - - - - - - - - - D. 4 题目 14 对序列( 49,38,65,97,76,13,47,50)采用直接插入排序法进行排序,要把第七个元素 47 插入到已排序中,为寻找插入的合适位置需要进行()次元素间的比较。A. 5 B. 6 C. 3 D. 4 题目 15 排序方法中,从未排序序列中挑选元素,并将其依次放入已排序序列(初始为空)的一端的方法,称为()排序。A. 选择B. 插入C. 快速D. 归并题目 16 一组记录的关键字序列为(26,59,36,18,20,25),利用堆排序的方法建立的初始小根堆为()。A. 26 , 59,36,18, 20,25 B. 26 , 18,59,20, 36,25 C. 18 , 20,36,59, 26,25 D. 18 , 20,25,59, 26,36 题目 17 一组记录的关键字序列为(25, 48,16,35, 79,82,23, 40,36,72),其中,含有5个长度为2 的有序表,按归并排序的方法对该序列进行一趟归并后的结果为()。A. 16 , 25,48,35, 79,82,23,36,40,72 B. 16 , 25,35,48, 23,40,79,82,36,72 C. 16 , 25,35,48, 79,23,36,40,82,72 D. 16 , 25,35,48, 79,82,23,36,40,72 题目 18 已知 10 个数据元素为(54,28,16,34, 73,62,95,60,26,43),对该数列从小到大排序,经过一趟冒泡排序后的序列为()。A. 16 , 28,34,54, 62,60,73,26,43,95 B. 28 , 16,34,54, 62,73,60,26,43,95 C. 16 , 28,34,54, 73,62,60,26,43,95 D. 28 , 16,34,54, 62,60,73,26,43,95 题目 19 一组记录的关键字序列为(46,79,56,38,40,84),利用快速排序,以第一个关键字为分割元素,经过一次划分后结果为()。A. 40 , 38,46,79, 56,84 B. 38 , 40,46,56, 79,84 C. 40 , 38,46,56, 79,84 D. 40 , 38,46,84, 56,79 题目 20 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 6 页 - - - - - - - - - 一组记录的关键字序列为(80,57,41,39,46,47),利用堆排序(堆顶元素是最小元素)的方法建立的初始堆为()。A. 39 , 80,46,47, 41,57 B. 39 , 47,46,80, 41,57 C. 41 , 39,46,47, 57,80 D. 39 , 46,41,57, 80,47 二、程序填空题(每题10 分,2 题,共 20 分。请点击正确选项,然后拖拽至相应的方框上)题目 21 以下函数是二叉排序树的查找算法,若二叉树为空,则返回根结点的指针,否则, 返回值是指向树结点的结构指针p(查找成功p 指向查到的树结点,不成功 p 指向为 NULL )完成程序中的空格typedef struct Bnode int key; struct Bnode *left; struct Bnode *right; Bnode; Bnode *BSearch(Bnode *bt, int k) /* bt用于接收二叉排序树的根结点的指针,k 用以接收要查找的关键字*/ Bnode *p; if(bt=NULL ) return (bt); p=bt; while(p-key!=k) if(kkey) p=p-left; else p=p-right; if(p=NULL) break; return(p; 题目 22 以下程序是折半插入排序的算法设待排序的记录序列存放在a1,an 中, 以 a0 作为辅助工作单元, 程序是要把ai 插入到已经有序的序列a1,ai-1中。 void binsort (NODE a ,int n) int x,i,j,s,k,m; for (i=2 ;i= n;i+ ) a0=ai; x= ai.key; s=1; j=i-1; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 6 页 - - - - - - - - - while (s=j) m=(s+j)/2 if( x=j+1;k- -) ak+1 =ak; aj+1=a0; 三、综合题(每小题8 分,共 40 分)题目 23 (1)设查找表为 (1,10,11,14,23,27,29,55,68) ,画出对上述查找表进行折半查找所对应的判定树,为了成功查找到元素14, 需要依次与元素回答进行比较。A.23,10,1,14 B.23,29,27,14 C.23,10,11,14 D.23,29,55,14 (2)在等概率条件下,成功查找的平均比较次数为回答。A.24/9 B.25/9 C.3 D.2.5 题目 24 (1)一组记录的关键字序列为(47,80, 57,39,41,46),利用堆排序的方法建立的初始堆为回答(堆顶元素是最小元素, 采用树的形式建堆)。A.39,41,57,80,47,46 B.39,41,46,80,47,57 C.39,47,46,80,41,57 D.39,41,57,80,46,47 (2)输出堆顶元素后, 调整后的堆为回答。A.41,47,46,80,57 B.41,57,46,80,47 C.41,57,80,47,46 D.41,80,46,47,57 题目 25 (1)对关键字序列 (56,51,71,54,46,106),利用快速排序, 以第一个关键字为分割元素,经过一次划分后结果为回答;A. 46,51,56,54,71,106 B. 56,51,54,46,71,106 C. 46,51,54,56,71,106 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 6 页 - - - - - - - - - D. 56,51,46,54,71,106 (2)一组记录的关键字序列为( 60,47 , 80,57, 39 ,41,46,30 ),利用归并排序的方法, 经过 (2,2) 归并的结果序列为回答。. A.(30, 57, 60, 80,47,39,41,46 ) B.(47, 60, 57, 80, 30,39,41,46 ) C.(41, 57, 60, 80, 30,39,47,46 ) D.(47, 57, 60, 80, 30,39,41,46 ) 题目 26 (1)对关键字序列 (36,69,46,28,30,74)采用快速排序, 以第一个关键字为分割元素,经过一次划分后的结果序列为回答A.30 ,28,46,36,69,74 B.28 ,30,36,46,69,74 C.28,30,46,36,69,74 D.30,28,36,46,69,74 (2)用冒泡法对上述序列排序,经两趟冒泡的结果序列为回答。A. 36,28,30,46,69,74 B. 36,46,28,20,69,74 C. 38,36,30,46,69,74 D.28,36,30,46,69,74 题目 27 (1)一组记录的关键字序列为45 ,40,65,43, 35,95 写出利用快速排序的方法,以第一个记录为基准得到的一趟划分的结果为回答;A. 35 40 65 45 35 95 B. 35 40 65 43 45 95 C. 35 40 43 45 65 95 D. 35 40 45 43 65 95 (2)对上述序列利用直接插入排序,逐次插入过程中,共进行了回答次元素间的比较。A.8 B.11 C.9 D.10 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 6 页 - - - - - - - - -
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号