查找排序习题讲解
数据结构第九章--查找-习题及答案
第九章查找一、选择题1•若查找每个记录的概率均等,则在具有n 个记录的连续顺序文件中采用顺序查找法查找一个记录,其平均查找长度ASL 为()。
A .(n-1)/2B.n/2C.(n+1)/2D.n 2. 下面关于二分查找的叙述正确的是()A. 表必须有序,表可以顺序方式存储,也可以链表方式存储C.表必须有序,而且只能从小到大排列B. 表必须有序且表中数据必须是整型,实型或字符型D.表必须有序,且表只 能以顺序方式存储3. 用二分(对半)查找表的元素的速度比用顺序法() A. 必然快B.必然慢C.相等D.不能确定4. 具有12个关键字的有序表,折半查找的平均查找长度()A.3.1B.4C.2.5D.55.当采用分块查找时,数据的组织方式为()A. 数据分成若干块,每块内数据有序B. 数据分成若干块,每块内数据不必有序,但块间必须有序,每块内最大(或最小)的数据组成索引块C. 数据分成若干块,每块内数据有序,每块内最大(或最小)的数据组成索引块D. 数据分成若干块,每块(除最后一块外)中数据个数需相同6. 二叉查找树的查找效率与二叉树的((1))有关,在((2))时其查找效率最低(1) :A.高度B.结点的多少C.树型D.结点的位置(2) :A.结点太多B.完全二叉树C.呈单枝树D.结点太复杂。
7. 对大小均为n 的有序表和无序表分别进行顺序查找,在等概率查找的情况下,对于查找失败,它们的平均查找长度是((1)),对于查找成功,他们的平均查找长度是((2))供选择的答案:A.相同的B.不同的9.分别以下列序列构造二叉排序树,与用其它三个序列所构造的结果不同的是()A .(100,80,90,60,120,110,130)B.(100,120,110,130,80,60,90) C. (100,60,80,90,120,110,130)D.(100,80,60,90,120,130,110)10. 在平衡二叉树中插入一个结点后造成了不平衡,设最低的不平衡结点为A,并已知A 的左孩子的平衡因子为0右孩子的平衡因子为1,则应作()型调整以使其平衡。
[课程]查找与排序部分习题集
查找与排序部分习题一、选择题1.设有100个元素,用折半查找法进行查找时,最大比较次数是______。
A、25 B、8 C、10 D、72.有一个有序表为{1,3,9,12,32,41,45,62,75,77,82,95,100},当折半查找值82的结点时,______次比较后查找成功。
(注:计算中间位置时取下整)A、1B、2C、4D、83.顺序查找法适合于存储结构为______的线性表。
A、散列存储B、顺序存储或链接存储C、压缩存储D、索引存储4.某顺序存储的表格中有90000个元素,以按关键字值升序排列,假定对每个元素进行查找的概率是相同的,且每个元素的关键字的值皆不相同,用顺序查找法查找时,平均比较次数约为______;最大比较次数约为______。
A、25000B、30000C、45000D、900005.设散列地址空间为0到m-1,k为关键字,用p去除k,将所得的余数作为k的散列地址,即H(k)=k%p。
为了减少发生冲突的频率,一般取p为______。
A、小于m的最大奇数B、小于m的最大偶数C、小于m的最大素数D、大于m的最大素数6.设有9个数据记录组成的线性表,它们的排序关键字的取值分别是(11,15,20,27,30,35,46,88,120),已将它们按照排序关键字递增有序的方式存放在一维结构数组a[0..8]中从下标0开始到下标8结束的位置,则当采用折半查找算法查找关键字值等于20的数据记录时,所需比较的元素下标依次是:______。
(注:计算中间位置时取下整)A、0,1,2B、4,1,2C、4,2D、4,3,27.顺序查找一个共有n个元素的线性表,其时间复杂度为______。
A、O(n)B、O(log2n)C、O(n2)D、O(nlog2n)8.设有100个元素,用折半查找法进行查找时,最小比较次数是______。
A、7B、4C、2D、19.哈希法中,除了考虑构造“均匀”的哈希函数外,还要解决冲突的问题,以下选项中______不是解决冲突的办法。
习题--查找与排序篇
习题——查找与排序篇1、在长度为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为()A)63 B)64 C)6 D)72、在长度为N的有序线性表中进行二分法查找,最坏情况下需要比较的次数是()A)O(N) B)O(N2) C)O(㏒2N) D)O(N㏒2N)3、下列数据结构中,能用二分法进行查找的是()A)顺序存储的有序线性表B)线性链表C)二叉链表D)有序线性链表4、请写出用二分查找法在有序顺序表(1,2,3,4,6,8,9,11)中查找3的比较序列:5、下列叙述中正确的是()A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(nlog2n)6、在长度为n的线性表中,寻找最大项至少要比较_ __次7、下列排序方法中,最坏情况下比较次数最少的是()A)冒泡排序B)简单选择排序C)直接插入排序D)堆排序8、支持子程序调用的数据结构是()A)栈B)树C)队列D)二叉树9、对长度N的线性表排序,在最坏情况下,比较次数不是N(N-1)/2的排序方法是()A)快速排序B)冒泡排序C)直接插入排序D)堆排序10、冒泡排序在最坏情况下的比较次数是()A)N(N+1)/2 B)N㏒2N C)N(N-1)/2 D)N/211、通过相邻数据元素的交换逐步将线性表变成有序的排序方法是()A)冒泡排序法B)简单选择排序法C)简单插入排序法D)希尔排序法12、对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为_ _13、序列(5,1,7,3,1,6,9,3,2,7,6)从大到小排列,冒泡排序第一遍扫描后结果__ ____14、如果一个算法P显式地调用自己称为__ ___,如果算法P调用另一个算法Q,而算法Q又调用算法P,则称为__ ____15、以下排序技术中属于交换类排序法的有________,属于插入类排序法的有___________,属于选择类排序法的有__________1.希尔排序2.堆排序3.冒泡排序4.简单选择排序5.简单插入排序6.快速排序16、下列排序方法中,最坏情况下比较次数最少的是()A)冒泡排序B)简单选择排序C)直接插入排序D)堆排序。
中考语文语句排序题练习题讲解学习
中考语文语句排序题练习题1、下面语段的空白处依次填入一组句子,正确的一项是()映日荷花,接天莲叶,亭亭莲蓬,柔嫩玉藕,无不牵惹诗情,引人遐思。
让我们学做荷花的事业吧,_______;让我们学做莲叶的事业吧,______;让我们学做莲子的事业吧,______;让我们学做藕的事业吧,__________。
①把寂寞留给自己②把芬芳献给他人③以苦心孕育未来④以宽阔拥抱生活A.②①④③ B.①④③② C.③②④① D.②④③①2、根据文段内容,选择短语填空(只填序号)。
有人说,宽容是一种润滑剂,__________; 宽容是一种镇定剂,______________;宽容是一束阳光,___________; 宽容是一座桥梁,______________.①可消融彼此间的猜疑积雪②可以消除人与人之间的摩擦③可将彼此间的心灵沟通④可以使人在众多纷扰中恪守平静3、将(1)—(4)句填在横线上,顺序最恰当的一项是()南极是一个冰雪有2000米厚的大陆,,,,。
①1983年,测得最低气温为零下89.2℃②在南极点,年平均温度达零下50℃③世界上环境最恶劣的大陆在等待着我们去征服④它是世界上最寒冷,风最大的地方。
A、①②③④B、④③②①C、④②①③D、③④①②4.下面语句排序最恰当的一项是()①光的速度是30万千米每秒,一天能走259亿2000万千米,这长度的365倍,就是一光年。
②比如从成都到重庆,有450千米,我们步行的话,每天走60千米,因此说从成都到重庆有七天半的路程。
③什么是光年呢?光年是天文学上表示距离的单位,表示光一年所走的路的长短。
④这种用时间表示距离的方法,在日常生活中经常用到。
A.④②①③ B.②③①④ C.③①④② D.③①②④5.将下列选项依次填入文中空缺处,正确的一项是()在人生的旅途中,能拥有那来至四面八方的种种提醒,该是多么令人欢欣鼓舞啊。
提醒可以是婉转的和风细雨,也可以是;可以是寥寥的片言只语,也可以是;可以直对相知的友人,也可以朝向;可以是面对面的激烈争辩,也可以只是。
数据结构查找与排序
第二部分 排序
• 各种排序算法的特性
– 时间性能(最好、最坏、平均情况) – 空间复杂度 – 稳定性
• 常见排序算法
– 堆排序-堆的定义,创建堆,堆排序(厦大3次,南航2次,南大3次) – 快速排序 – 基数排序 – 插入排序 – 希尔排序 – 冒泡排序 – 简单选择排序 – 归并排序
一、基于选择的排序
• 快速排序算法关键字的比较和交换也是跳跃式进行的,所以快速排序 算法也是一种不稳定的排序方法。
• 由于进行了递归调用,需要一定数量的栈O(log2n)作为辅助空间
例如
1、快速排序算法在 数据元素按关键字有序的 情况下最不利于发挥其长处。
2、设关键字序列为:49,38,66,80,70,15,22,欲对该序列进行从小到大排序。 采用待排序列的第一个关键字作为枢轴,写出快速排序法的一趟和二趟排序之 后的状态
49
49
38
66
38
10
90
75
10
20
90
75
66
20
10
38
20
90
75
66
49
2.序列是堆的是( C )。 A.{75, 65, 30, 15, 25, 45, 20, 10} B.{75, 65, 45, 10, 30, 25, 20, 15} C.{75, 45, 65, 30, 15, 25, 20, 10} D.{75, 45, 65, 10, 25, 30, 20, 15}
➢ 依靠“筛选”的过程
➢ 在线性时间复杂度下创建堆。具体分两步进行: 第一步,将N个元素按输入顺序存入二叉树中,这一步只要求满 足完全二叉树的结构特性,而不管其有序性。
第二步,按照完全二叉树的层次遍历的反序,找到第一个非叶子结点, 从该结点开始“筛选”,调整各结点元素,然后按照反序,依次做筛选,直到做 完根结点元素,此时即构成一个堆。
《数据结构》习题集:第9章查找(第1次更新2019-5)
第9章查找一、选择题1.顺序查找一个共有n个元素的线性表,其时间复杂度为(),折半查找一个具有n个元素的有序表,其时间复杂度为()。
【*,★】A.O(n)B. O(log2n)C. O(n2)D. O(nlog2n)2.在对长度为n的顺序存储的有序表进行折半查找,对应的折半查找判定树的高度为()。
【*,★】A.nB.C.D.3.采用顺序查找方式查找长度为n的线性表时,平均查找长度为()。
【*】A.nB. n/2C. (n+1)/2D. (n-1)/24.采用折半查找方法检索长度为n的有序表,检索每个元素的平均比较次数()对应判定树的高度(设高度大于等于2)。
【**】A.小于B. 大于C. 等于D. 大于等于5.已知有序表(13,18,24,35,47,50,62,83,90,115,134),当折半查找值为90的元素时,查找成功的比较次数为()。
【*】A. 1B. 2C. 3D. 46.对线性表进行折半查找时,要求线性表必须()。
【*】A.以顺序方式存储B. 以链接方式存储C.以顺序方式存储,且结点按关键字有序排序D. 以链接方式存储,且结点按关键字有序排序7.顺序查找法适合于存储结构为()的查找表。
【*】A.散列存储B. 顺序或链接存储C. 压缩存储D. 索引存储8.采用分块查找时,若线性表中共有625个元素,查找每个元素的概率相同,假设采用顺序查找来确定结点所在的块时,每块应分()个结点最佳。
【**】A.10B. 25C. 6D. 6259.从键盘依次输入关键字的值:t、u、r、b、o、p、a、s、c、l,建立二叉排序树,则其先序遍历序列为(),中序遍历序列为()。
【**,★】A.abcloprstuB. alcpobsrutC. trbaoclpsuD. trubsaocpl10.折半查找和二叉排序树的时间性能()。
【*】A.相同B. 不相同11.一棵深度为k的平衡二叉树,其每个非终端结点的平衡因子均为0,则该树共有()个结点。
数据结构复习--排序和查找
数据结构复习--排序和查找现在正在学习查找和排序,为了节省时间提⾼效率,就正好边学习边整理知识点吧!知识点⼀:⼆分查找/折半查找1.⼆分查找的判定树(选择题)下列⼆叉树中,可能成为折半查找判定树(不含外部结点)的是: (4分)1.2.3.4.注:折半查找判定树是⼀棵⼆叉排序树,它的中序遍历结果是⼀个升序序列,可以在选项中的树上依次填上相应的元素。
虽然折半查找可以上取整也可以下取整但是⼀个查找判定树只能有⼀种取整⽅式。
如果升序序列是偶数个,那么终点应该偏左多右少。
在2选项中,由根节点左⼦树4个节点⽽右⼦树5个节点可以确定⽤的是向下取整策略,但是它的左⼦节点在左⼦树种对应的终点左边2个,右边个,明显是上取整策略,策略没有统⼀,所以是错的。
其他的选项类似分析。
2.⼆分查找法/折半查找法已知⼀个长度为16的顺序表L,其元素按关键字有序排列。
若采⽤⼆分查找法查找⼀个L中不存在的元素,则关键字的⽐较次数最多是: (2分)1. 72. 63. 54. 4 注:⼀次找到最边界的那⼀个树的情况下有最多次数 这个题中结点数16是个偶数:第⼀次(0+15)/2 7 第⼆次(8+15)/2 11第三次(12+15)/2 14 第四次(14+15)/2 14 第五次(15+15)/2 15(下取整的就向右计算求最多次数)第⼀次(0+15)/2 8 第⼆次(0+7)/2 4 第三次(0+3)/2 2 第四次(0+1)/2 0第五次(0+0)/2 0(下取整的话就向左求最多次数)若结点数是奇数15:第⼀次(0+14)/2 7 第⼆次( 0+6)/2 3 第三次(0+2)/2 1第四次(0+0)/2 0第⼀次(0+14)/2 7 第⼆次(8+14)/2 11 第三次(12+14)/2 13第四次(14+14)/2 0这时候向左或者向右都是OK的(因为得到的数都是能够被2整除的)但是划重点了折半查找⼀个有序表中不存在的元素,若向下取整,则要最多⽐较[log2n]+1次,若向上取整,则要最多⽐较[log2(n+1)],其实就是求树的深度.(这⼀块⾃⼰的说法可能不够准确,希望⼤家看到有问题的可以指出来)结合实际,我们⽤[log2n]+1来算更简单并且计算[log2n]要取整数,因为可能会存在不是满⼆叉树的情况。
数据结构图,查找,内排序的练习及答案
数据结构图,查找,内排序的练习及答案数据结构课后练习习题要求:此次练习不要求上交,只是帮助⼤家掌握知识点,便于复习。
第⼋章图⼀.单项选择题(20分)1. 带权有向图G ⽤邻接矩阵A 存储,则Vi 的⼊度等于A 中___D______A. 第i ⾏⾮∞的元素只和B. 第i 列⾮∞的元素之和C. 第i ⾏⾮∞且⾮0的元素之和D. 第i 列⾮∞且⾮0的元素个数2. ⽆向图的邻接矩阵是⼀个___A____A. 对称矩阵B. 零矩阵C. 上三⾓阵D. 对⾓矩阵3. 在⼀个⽆向图中,所有顶点的度之和等于边数的__C____倍A. 1/2B. 1C. 2D. 44. ⼀个有n 个顶点的⽆向图最多有___C____条边。
A. nB. n(n-1)C. n(n-1)/2D.2n5. 对于⼀个具有n 个顶点的⽆向图,若采⽤邻接矩阵表⽰,则该矩阵⼤⼩是__D_____A. nB. 2)1(?nC. n-1D. 2n6. ⼀个有向图G 的邻接表存储如右图所⽰,现按深度优先搜索遍历,从V1出发,所得到的顶点序列是___B_____。
A. 1,2,3,4,5B. 1,2,3,5,4C. 1,2,4,5,3D. 1,2,5,3,47. 对右图所⽰的⽆向图,从顶点V1开始进⾏深度优先遍历,可得到顶点访问序列__A______(提⽰:可先画出邻居表图再遍历)A. 1 2 4 3 5 7 6B. 1 2 4 3 5 6 7C. 1 2 4 5 6 3 7D. 1 2 3 4 5 6 78. 如果从⽆向图的任⼀顶点出发进⾏⼀次深度优先搜索即可访问所有顶点,则该图⼀定是__B_____A. 完全图B. 连通图C.有回路D. ⼀棵树9. 任何⼀个⽆向连通图___B___最⼩⽣成树(提⽰:注意最⼩⽣成树的定义,此题易错)A. 只有⼀棵B. ⼀棵或多棵C. ⼀定有多棵D.可能不存在11. 若图的邻接矩阵中主对⾓线上的元素全是0,其余元素全是1,则可以断定该图⼀定是_D_____。
查找排序习题及答案 (1)
查找排序习题及答案一、选择题1 若查找每个记录的概率均等,则在具有n个记录的连续顺序文件中采用顺序查找法查找一个记录,其平均查找长度ASL为( C )。
A. (n-1)/2 B. n/2 C. (n+1)/2 D. n2 用二分(对半)查找表的元素的速度比用顺序法( D )A必然快 B. 必然慢 C. 相等 D. 不能确定3 下面关于m阶B树说法正确的是( B )①每个结点至少有两棵非空子树;②树中每个结点至多有m一1个关键字;③所有叶子在同一层上; ④当插入一个数据项引起B树结点分裂后,树长高一层。
A.①②③ B. ②③ C. ②③④ D. ③4 将10个元素散列到100000个单元的哈希表中,则( C )产生冲突。
A. 一定会B. 一定不会C. 仍可能会5 下列内部排序算法中:A.快速排序 B.直接插入排序 C. 二路归并排序 D. 简单选择排序 E. 起泡排序F. 堆排序(1)其比较次数与序列初态无关的算法是( C,D )(2)在初始序列已基本有序(除去n个元素中的某k个元素后即呈有序,k<<n)的情况下,排序效率最高的算法是( B )(3)排序的平均时间复杂度为O(n•logn)的算法是(A,C,F)为O(n•n)的算法是(B,D,E)6 下列序列中,( C )是执行第一趟快速排序后所得的序列。
A. [68,11,18,69] [23,93,73]B. [68,11,69,23] [18,93,73]C. [93,73] [68,11,69,23,18]D. [68,11,69,23,18] [93,73]7 下列四个序列中,哪一个是堆( C )。
A. 75,65,30,15,25,45,20,10B. 75,65,45,10,30,25,20,15C. 75,45,65,30,15,25,20,10D. 75,45,65,10,25,30,20,158 排序方法有许多种,(1)C法从未排序的序列中依次取出元素,与已排序序列(初始时为空)中的元素作比较,将其放入已排序序列的正确位置上;(2)A法从未排序的序列中挑选元素,并将其依次放入已排序序列(初始时为空)的一端;交换排序方法是对序列中的元素进行一系列比较,当被比较的两元素逆序时,进行交换;(3)B和(4)D是基于这类方法的两种排序方法,而(4)D是比(3)B效率更高的方法;(5)G法是基于选择排序的一种排序方法,是完全二叉树结构的一个重要应用。
查找排序习题答案
O(n) 5. 以折半查找方法在一个查找表上进行查找时,该查找表必须组织 成________存储的________表。5. 顺序 有序 6. 从有序表(12,18,30,43,56,78,82,95)中分别折半查找43和56元 素时,其比较次数分别为________和________。 6. 1,3 7. 假定对长度n=50的有序表进行折半查找,则对应的判定树高度为 ________,最后一层的结点数为________。7. 6, 19 10. 在一棵二叉排序树中,每个分支结点的左子树上所有结点的值 一定________该结点的值,右子树上所有结点的值一定________该结点 的值。10. 小于,大于 13. 向一棵二叉排序树中插入一个元素时,若元素的值小于根结点的 值,则接着向根结点的________插入,若元素的值大于根结点的值,则 接着向根结点的________插入。13. 左子树,右子树 16. 假定对线性表(38,25,74,52,48)进行哈希存储,采用H(K)=K % 7作为哈希函数,采用线性探测法处理冲突,则在建立哈希表的过程 中,将会碰到________次存储冲突。16. 5 17. 假定对线性表(38,25,74,52,48)进行哈希存储,采用H(K)=K % 7作为哈希函数,采用线性探测法处理冲突,则平均查找长度为 ________。17. 2 19. 对线性表(18,25,63,50,42,32,90)进行哈希存储时,若选 用H(K)=K % 9作为哈希函数,则哈希地址为0的元素有________个,哈 希地址为5的元素有________个。19. 3, 2 三、应用题 1. 已知一个顺序存储的有序表为 (15,26,34,39,45,56,58,63,74,76),试画出对应的折半查找判定树, 求出其平均查找长度。 1. 折半查找判定树如图7-3所示,平均查找长度等于29/10。图7-3中 的结点与有序表中元素的对应关系如下表所示。
一年级数学数字排序练习题及讲解
一年级数学数字排序练习题及讲解1、数字排序练习题:从小到大排序题目一:3、8、2、5、9、1、7、4、6、10解答一:1、2、3、4、5、6、7、8、9、10解析一:这是一个从小到大排序的练习题。
我们需要按照数字的大小进行排序,将数字从小到大排列。
首先,我们先找出其中最小的数字1,然后是2,接着是3,4,一直到10。
最后将这些数字按顺序排列起来,就是1、2、3、4、5、6、7、8、9、10。
题目二:15、23、11、28、7、19、36、14、30、5解答二:5、7、11、14、15、19、23、28、30、36解析二:同样是一个从小到大排序的练习题。
我们需要将数字按照从小到大的顺序排列起来。
首先找到最小的数字5,然后是7,接着是11、14、15,再到19,23,28,最后是30和36。
将这些数字按照顺序排列起来,就是5、7、11、14、15、19、23、28、30、36。
2、数字排序练习题:从大到小排序题目三:6、12、19、3、10、15、8、17解答三:19、17、15、12、10、8、6、3解析三:这是一个从大到小排序的练习题。
我们需要按照数字的大小进行排序,将数字从大到小排列。
首先,找到其中最大的数字19,然后是17、15、12、10、8、6、最后是3。
将这些数字按照从大到小的顺序排列起来,就是19、17、15、12、10、8、6、3。
题目四:27、13、32、9、21、16、25、11解答四:32、27、25、21、16、13、11、9解析四:同样是一个从大到小排序的练习题。
我们需要将数字按照从大到小的顺序排列起来。
先找到最大的数字32,然后是27、25、21、16、13、11、最后是9。
将这些数字按照从大到小的顺序排列起来,就是32、27、25、21、16、13、11、9。
通过这些数字排序的练习题,学生们可以加深对数字大小顺序的理解,提高他们的排序能力和逻辑思维能力。
希望同学们能够通过练习不断巩固,掌握数字排序的方法和技巧。
树图查找排序复习讲解【范本模板】
树一、判断题:1。
二叉树是一棵无序树。
(×)2.在一棵二叉树中,假定每个结点只有左子女,没有右子女,对它分别进行中序遍历和后序遍历,则具有相同的结果。
(√)3。
度为二的有序树等价于二叉树。
(√)4.树的带权路径长度最小的二叉树中必定没有度为1的结点。
(√)5。
哈夫曼树一定是满二叉树。
(×)6.满二叉树也是完全二叉树.(√)7。
设与一棵树T所对应的二叉树为BT,则与T中的叶子结点所对应的BT中的结点也一定是叶子结点。
(×)8.将一棵树转换成二叉树后,根结点没有左子树(×)9。
已知一棵二叉树的前序序列和后序序列可以唯一地构造出该二叉树。
(√)10用二叉树的前序遍历和中序遍历可以导出树的后序遍历.(√)11.在完全二叉树中,若某结点无左孩子,则它必是叶结点。
(√)。
12.任何一棵二叉树都有n0=n2+1的关系式.(√)13.已知一棵树的前序遍历和后序遍历序列能唯一地确定这棵树.( √)二、填空题1.假定一棵二叉树的结点个数为32,则它的最小深度为___6___,最大深度为:32.2.在一棵二叉树中,度为2的结点有5个,度为1的结点有6个,那么叶子结点有__6____ 个.3.树的双亲表示法便于实现涉及到___双亲___的操作,孩子表示法便于实现涉及到孩子的操作。
4.对于一颗具有n个结点的二叉树,对应二叉链表中指针域有__n—1__个用于指向子结点。
5.下图所示二叉树存储在一维数组中,则元素F的下标位置为___11___。
(A为1)6.高度为k的二叉树具有的结点数目,最少为___ K ___,最多为___2K—1___。
7.对任何一棵二叉树,若n0,n1,n2分别是度为0,1,2的结点的个数,则n0=__ n2+1__.8.一棵含有16个结点的完全二叉树,对他按层编号,对于编号为7的结点,他的双亲结编号点为___3___左孩子编号为____14__、右孩子编号为___15___。
数据结构(查找)习题与答案
一、单选题1、对于查找表(13,27,38,49,50 ,65,76,97)采用顺序查找,在等概率情况下查找成功的平均查找长度是()。
A.4.5B.9C.4D.8正确答案:A2、在关键字序列(10,20,30,40,50)中采用折半查找20,依次与()关键字进行了比较。
A.30,10,20B.20C.30,20D.40,20正确答案:A3、在关键字序列(8,12,20,25,33)中,采用二分查找25,关键字之间比较需要()次。
A.2B.1C.3D.4正确答案:A4、对于长度为11的有序表,按折半查找,在等概率情况下查找成功时,其平均查找长度是()。
A.3B.4C.1D.2正确答案:A5、对于长度为11的有序表,按折半查找,在查找失败时,待查找值域表中关键字比较的次数是()。
A.3次或4次B.2次或3次C.4次或5次D.1次或2次正确答案:A6、对于长度为n的有序表,按折半查找,在等概率情况下查找成功平均时间复杂度是()。
A.O(㏒n)B.O(n)C.O(1)D.O(n㏒n)正确答案:A7、索引顺序查找也叫分块查找,其查找过程分为是()个步骤。
A.1B.3C.4D.2正确答案:D8、对于长度为n的关键字序列创建一颗二叉排序树,该树可能的最大高度是()。
A.n+1B.n-1C.㏒nD.n正确答案:D9、对于关键字序列(30,25,40,35,45),按序列次序创建一颗二叉排序树,在等概率情况下查找成功时,其平均查找长度是()。
A.8/3B.11/5C.8D.11正确答案:B10、影响散列查找时间效率的主要因素()。
A.仅与散列表中实际元素个数相关B.仅与散列表长相关C.与散列表长和散列表中实际元素个数均相关D.与散列表长和散列表中实际元素个数均不相关正确答案:C11、一组关键字序列为(27,17,9,19,16,43,53,8,63),用哈希函数H(key)=key MOD 8和链地址法处理冲突,查找关键字43,与散列表中关键字进行了()次比较。
第8章 排序习题解析
排序习题解析11. 填空题⑴排序的主要目的是为了以后对已排序的数据元素进行()。
【解答】查找【分析】对已排序的记录序列进行查找通常能提高查找效率。
⑵对n个元素进行起泡排序,在()情况下比较的次数最少,其比较次数为()。
在()情况下比较次数最多,其比较次数为()。
【解答】正序,n-1,反序,n(n-1)/2⑶对一组记录(54, 38, 96, 23, 15, 72, 60, 45, 83)进行直接插入排序,当把第7个记录60插入到有序表时,为寻找插入位置需比较()次。
【解答】3【分析】当把第7个记录60插入到有序表时,该有序表中有2个记录大于60。
⑷对一组记录(54, 38, 96, 23, 15, 72, 60, 45, 83)进行快速排序,在递归调用中使用的栈所能达到的最大深度为()。
【解答】3⑸对n个待排序记录序列进行快速排序,所需要的最好时间是(),最坏时间是()。
【解答】O(nlog2n),O(n2)⑹利用简单选择排序对n个记录进行排序,最坏情况下,记录交换的次数为()。
【解答】n-1【分析】60是该键值序列对应的完全二叉树中最后一个分支结点。
2. 选择题⑴下述排序方法中,比较次数与待排序记录的初始状态无关的是()。
A插入排序和快速排序B归并排序和快速排序C选择排序和归并排序D插入排序和归并排序【解答】C【分析】选择排序在最好、最坏、平均情况下的时间性能均为O(n2),归并排序在最好、最坏、平均情况下的时间性能均为O(nlog2n)。
⑵下列序列中,()是执行第一趟快速排序的结果。
A [da,ax,eb,de,bb] ff [ha,gc]B [cd,eb,ax,da] ff [ha,gc,bb]C [gc,ax,eb,cd,bb] ff [da,ha]D [ax,bb,cd,da] ff [eb,gc,ha]【解答】A【分析】此题需要按字典序比较,前半区间中的所有元素都应小于ff,后半区间中的所有元素都应大于ff。
数据结构查找与排序练习题答案——查找排序练习题答案
数据结构查找与排序练习题答案一、选择题1.对N个元素的表做顺序查找时,若查找每个元素的概率相同,则平均查找长度为( ) A.(N+1)/2 B. N/2 C. N D. [(1+N)*N ]/22.适用于折半查找的表的存储方式及元素排列要求为( )A.链接方式存储,元素无序 B.链接方式存储,元素有序C.顺序方式存储,元素无序D.顺序方式存储,元素有序3.当在一个有序的顺序存储表上查找一个数据时,即可用折半查找,也可用顺序查找,但前者比后者的查找速度( )A.必定快 B.不一定 C. 在大部分情况下要快 D. 取决于表递增还是递减4.有一个长度为12的有序表,按二分查找法对该表进行查找,在表内各元素等概率情况下查找成功所需的平均比较次数为()。
A.35/12 B.37/12 C.39/12 D.43/125.折半查找的时间复杂性为()A. O(n2)B. O(n)C. O(nlogn)D. O(logn)6.对有18个元素的有序表作折半查找,则查找A[3]的比较序列的下标为()A.1,2,3B.9,5,2,3C.9,5,3D.9,4,2,37.设有序表的关键字序列为{1,4,6,10,18,35,42,53,67,71,78,84,92,99},当用二分查找法查找健值为84的结点时,经()次比较后查找成功。
A.2B. 3C. 4D.128.用n个键值构造一棵二叉排序树,最低高度为()A.n/2B.、nC.lognD.logn+19.分别以下列序列构造二叉排序树,与用其它三个序列所构造的结果不同的是( ) A.(100,80, 90, 60, 120,110,130)B.(100,120,110,130,80, 60, 90)C.(100,60, 80, 90, 120,110,130)D.(100,80, 60, 90, 120,130,110)10.设有一组记录的关键字为{19,14,23,1,68,20,84,27,55,11,10,79},用链地址法构造散列表,散列函数为H(key)=key% 13,散列地址为1的链中有()个记录。
三年级句子排序讲解及练习题30道附答案(下)
一、按事情发展的顺序排列有些错乱的句子,我们在排列时,应仔细分析句与句之间的联系。
常见的错乱句子,往往叙述了一件完整的事,或者活动的具体过程。
那么,我们就可以按事情发展的顺序来排列。
如:()他想,这是谁丢的,真不讲卫生。
()他看见地上有一团白白的东西。
()忽然,他看见有几个小同学在打扫操场,争做好事。
()下课了,张良在操场上玩。
()他连忙回头,不好意思地拾起刚才看到的那一团白纸。
()想着,他就若无其事地走开了。
()走近一看,原来是一团废纸。
从这段话中,我们可以看出,叙述了张良在操场上看到了一团废纸,经过思想斗争,最后拾起了那团废纸的过程,层次清楚。
在排列时,我们可按事情发展的顺序排列排列为4、2、6、1、7、5、3。
二、按时间先后顺序排列对一些错乱的句子,我们可以找出表示时间概念的词语,如,早晨、上午、中午、下午等词,然后按时间先后顺序进行排列句子。
例如:()华罗庚教授是一位自学成才的著名的数学家。
()20岁那年,他得了伤寒病,一躺就是半年,病好后,一条腿残疾,但他毫不泄气,继续向科学城堡进攻。
()他14岁开始自学数学,每天坚持自学10小时,从不间断。
()1932年,22岁的华罗庚应清华大学数学系主任熊庆来的邀请,到清华大学工作。
()从19岁起,华罗庚开始写数学论文。
()在清华期间,他看了更多的数学书,并开始学习外文。
由于他肯下苦功,进步很快,25岁时,华罗庚就成了著名的数学家。
排列这段话时,我们可以抓住"14岁"、"19岁"、"20岁"、"22岁"、"25岁"这些表示年龄的词,也就是以时间顺序来排列句子,那问题就迎刃而解了,正确的排列应是:1、4、2、5、3、6。
三、按先总述后分述的顺序排列例:()有桉树、椰子树、橄榄树、凤凰树,还有别的许多亚热带树木。
()初夏,桉树叶子散发出来的香味,飘得满街满院都是。
数据结构第九章--查找-习题及答案
第九章查找一、选择题1.若查找每个记录的概率均等,则在具有n个记录的连续顺序文件中采用顺序查找法查找一个记录,其平均查找长度ASL为( )。
A. (n-1)/2 B. n/2 C. (n+1)/2 D. n2. 下面关于二分查找的叙述正确的是 ( )A. 表必须有序,表可以顺序方式存储,也可以链表方式存储 C. 表必须有序,而且只能从小到大排列B. 表必须有序且表中数据必须是整型,实型或字符型 D. 表必须有序,且表只能以顺序方式存储3. 用二分(对半)查找表的元素的速度比用顺序法( )A.必然快 B. 必然慢 C. 相等 D. 不能确定4. 具有12个关键字的有序表,折半查找的平均查找长度()A. 3.1B. 4C. 2.5D. 55.当采用分块查找时,数据的组织方式为 ( )A.数据分成若干块,每块内数据有序B.数据分成若干块,每块内数据不必有序,但块间必须有序,每块内最大(或最小)的数据组成索引块C. 数据分成若干块,每块内数据有序,每块内最大(或最小)的数据组成索引块D. 数据分成若干块,每块(除最后一块外)中数据个数需相同6. 二叉查找树的查找效率与二叉树的( (1))有关, 在 ((2))时其查找效率最低(1): A. 高度 B. 结点的多少 C. 树型 D. 结点的位置(2): A. 结点太多 B. 完全二叉树 C. 呈单枝树 D. 结点太复杂。
7. 对大小均为n的有序表和无序表分别进行顺序查找,在等概率查找的情况下,对于查找失败,它们的平均查找长度是((1)) ,对于查找成功,他们的平均查找长度是((2))供选择的答案:A. 相同的B.不同的9.分别以下列序列构造二叉排序树,与用其它三个序列所构造的结果不同的是( ) A.(100,80, 90, 60, 120,110,130) B.(100,120,110,130,80, 60, 90)C.(100,60, 80, 90, 120,110,130)D. (100,80, 60, 90, 120,130,110)10. 在平衡二叉树中插入一个结点后造成了不平衡,设最低的不平衡结点为A,并已知A的左孩子的平衡因子为0右孩子的平衡因子为1,则应作( ) 型调整以使其平衡。
数据结构查找和排序习题
第九章查找一、选择题1、已知一个有序表为(11,22,33,44,55,66,77,88,99),则折半查找55需要比较()次。
A.1B.2C.3D.43、解决哈希冲突的主要方法有()。
A.数字分析法、除余法、平方取中法B.数字分析法、除余法、线性探测法C.数字分析法、线性探测法、再哈希法D.线性探测法、再哈希法、链地址法4、在一棵深度为h的具有n个元素的二叉排序树中,查找所有元素的最长查找长度为()。
A.nB.log2nC.(h+1)/2D.h5、已知表长为25的哈希表,用除留取余法,按公式H(key)=key MOD p建立哈希表,则p应取()为宜。
A.23B.24C.25D.266、设哈希表长m=14,哈希函数H(key)=key MOD11。
表中已有4个结点:addr(15)=4,addr(38)=5,addr(61)=6,addr(84)=7其余地址为空,如用二次探测再散列处理冲突,则关键字为49的地址为()。
A.8B.3C.5D.99、m阶B-树中的m是指()。
A.每个结点至少具有m棵子树B.每个结点最多具有m棵子树C.分支结点中包含的关键字的个数D.m阶B-树的深度10、一个待散列的线性表为k={18,25,63,50,42,32,9},散列函数为H(k)=k MOD9,与18发生冲突的元素有()个。
A.1B.2C.3D.411、在对查找表的查找过程中,若被查找的数据元素不存在,则把该数据元素插到集合中,这种方式主要适合于()。
A.静态查找表B.动态查找表C.静态查找表和动态查找表D.两种表都不适合12、有一个有序表为{1,3,9,12,32,41,45,62,75,77,82,95,100},当折半查找值为82的结点时,(B)次比较后查找成功。
A.1B.4C.2D.813、在各种查找方法中,平均查找承担与结点个数n无关的查找方法是()。
A.顺序查找B.折半查找C.哈希查找D.分块查找14、下列二叉树中,不.平衡的二叉树是()。
编程基础之顺序查找题之欧阳道创编
01:查找特定的值••查看•提交•统计•提问总时间限制:1000ms内存限制:65536kB描述在一个序列(下标从1开始)中查找一个给定的值,输出第一次出现的位置。
输入第一行包含一个正整数n,表示序列中元素个数。
1 <= n <= 10000。
第二行包含n个整数,依次给出序列的每个元素,相邻两个整数之间用单个空格隔开。
元素的绝对值不超过10000。
第三行包含一个整数x,为需要查找的特定值。
x的绝对值不超过10000。
输出若序列中存在x,输出x第一次出现的下标;否则输出-1。
样例输入样例输出02:输出最高分数的学生姓名•查看描述输入学生的人数,然后再输入每位学生的分数和姓名,求获得最高分数的学生的姓名。
输入第一行输入一个正整数N(N <= 100),表示学生人数。
接着输入N行,每行格式如下:分数姓名分数是一个非负整数,且小于等于100;姓名为一个连续的字符串,中间没有空格,长度不超过20。
数据保证最高分只有一位同学。
输出获得最高分数同学的姓名。
样例输入样例输出来源习题(13-1)03:不高兴的津津•查看描述津津上初中了。
妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。
另外每周妈妈还会送她去学习朗诵、舞蹈和钢琴。
但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。
假设津津不会因为其它事不高兴,并且她的不高兴不会持续到第二天。
请你帮忙检查一下津津下周的日程安排,看看下周她会不会不高兴;如果会的话,哪天最不高兴。
输入包括七行数据,分别表示周一到周日的日程安排。
每行包括两个小于10的非负整数,用空格隔开,分别表示津津在学校上课的时间和妈妈安排她上课的时间。
输出包括一行,这一行只包含一个数字。
如果不会不高兴则输出0,如果会则输出最不高兴的是周几(用1, 2, 3, 4, 5, 6, 7分别表示周一,周二,周三,周四,周五,周六,周日)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第7章查找【例7-1】有序表按关键字排列如下:7,14,18,21,23,29,31,35,38,42,46,49,52,在表中查找关键字为14和22的数据元素,并画出折半查找过程的判定树。
解:折半查找的过程描述如下:①low=1;high=length;//设置初始区间②当low>high时,返回查找失败信息//表空,查找失败③low≤high,mid=(low+high)/2; //取中点a. 若kx<tbl.elem[mid].key,high=mid-1;转②//查找在左半区进行b. 若kx>tbl.elem[mid].key,low=mid+1;转②//查找在右半区进行c. 若kx=tbl.elem[mid].key,返回数据元素在表中位置//查找成功●查找关键字为14的过程如下:low=1 ①设置初始区间high=13───────────────────────────↑②表空测试,非空;mid=7 ③得到中点,比较测试为a情形↑↑low=1 high=6 high=mid-1,调整到左半区────────────────────────────↑②表空测试,非空;mid=3 ③得到中点,比较测试为a情形↑↑low=1 high=2 high=mid-1,调整到左半区────────────────────────────↑②表空测试,非空;mid=1 ③得到中点,比较测试为b情形↑↑low=2 high=2 low=mid+1,调整到右半区────────────────────────────↑②表空测试,非空;mid=2 ③得到中点,比较测试为c情形查找成功,返回找到的数据元素位置为2●查找关键字为22的过程如下:low=1 ①设置初始区间high=13────────────────────────────↑②表空测试,非空;mid=7 ③得到中点,比较测试为a情形↑↑low=1 high=6 high=mid-1,调整到左半区───────────────────────────↑②表空测试,非空;mid=3 ③得到中点,比较测试为b情形↑ ↑low=4 high=6 low=mid+1,调整到右半区────────────────────────────↑ ②表空测试,非空;mid=5 ③得到中点,比较测试为a 情形↑↑low=4 high=4 high=mid-1,调整到左半区────────────────────────────↑ ②表空测试,非空;mid=4 ③得到中点,比较测试为b 情形↑ ↑high=4 low=5 low=mid+1,调整到右半区────────────────────────────②表空测试,为空;查找失败,返回查找失败信息为0查找过程的判定树如图7-1所示。
【例7-2】记录的关键字序列为:63,90,70,55,67,42,98,83,10,45,58,则画出构造一棵二叉排序树的过程。
解:构造二叉排序树的过程如图7-2所示。
【例7-3】关键字集为(47,7,29,11,16,92,22,8,3),哈希表表长为11。
H (key )= key MOD 11,用线性探测法处理冲突。
解:建表如下:△ ▲ △ △分析:47、7、11、16、92均是由哈希函数得到的没有冲突的哈希地址而直接存入的。
H (29)= 7,哈希地址上冲突,需寻找下一个空的哈希地址:63 63 90 98 70 67 55 42 63 90 7067 55 42 63 90 70 67 55 63 90 70 55 63 90 70 63 90 63 58 55 90 42 98 70 45 10 67 83 63 55 90 42 98 70 45 10 67 83 63 90 98 70 67 83 55 42 10 63 9098 70 67 83 55 42 图7-2 二叉排序树的构造过程由H i =(H(29)+1)MOD 11 = 8 ,哈希地址8为空,将29存入。
另外,22、8同样在哈希地址上有冲突,也是由H i找到空的哈希地址的。
而H(3)= 3,哈希地址上冲突,由:H1=(H(3)+1)MOD 11 = 4,仍然冲突。
H2=(H(3)+2)MOD 11 = 5,仍然冲突。
H3=(H(3)+3)MOD 11 = 6,找到空的哈希地址,存入。
【例7-5】设有一组关键字(19,01,23,14,55,20,84,27,68,11,10,77),采用哈希函数:H(key)= key % 13,若用开放定址法的线性探测法解决冲突,试在0~13的哈希地址空间中对该关键字序列构造哈希表并求其成功查找时的ASL。
解:依题意,m=13,线性探测法的下一个地址计算公式为:d i = H(key)d i+1 = (d i+1)% m ;i=1,2,…其计算函数如下:H(19)= 19 % 13 = 6H(01)= 01 % 13 = 1H(23)= 23 % 13 = 10H(14)= 14 % 13 = 1 (冲突)H(14)=(1+1)% 14 = 2H(55)= 55 % 13 = 3H(20)= 20 % 13 = 7H(84)= 84 % 13 = 6 (冲突)H(84)=(6+1)% 14 = 7 (仍冲突)H(84)=(7+1)% 14 = 8H(27)= 27 % 13 = 1 (冲突)H(27)=(1+1)% 14 = 2 (仍冲突)H(27)=(2+1)% 14 = 3 (仍冲突)H(27)=(3+1)% 14 = 4H(68)= 68 % 13 = 3 (冲突)H(68)=(3+1)% 14 = 4 (仍冲突)H(68)=(4+1)% 14 = 5H(11)= 11 % 13 = 11H(10)= 10 % 13 = 10 (冲突)H(10)=(10+1)% 14 = 11 (仍冲突)H(10)=(11+1)% 14 = 12H(77)= 77 % 13 = 12 (冲突)H(77)=(12+1)% 14 = 13哈希表如下:共有12个关键字,等概率查找,则成功查找时ASL=(1+2+1+4+3+1+1+3+1+1+3+2)/12=23/12≈1.9习题7一、单项选择题1.若查找每个元素的概率相等,则在长度为n的顺序表上查找任一元素的平均查找长度为()。
A. nB. n+1C. (n-1)/2D. (n+1)/22.对于长度为9的顺序存储的有序表,若采用折半查找,在等概率情况下的平均查找长度为( )的9分之一。
A. 20B. 18C. 25D. 223.对于长度为18的顺序存储的有序表,若采用折半查找,则查找第15个元素的比较次数为( )。
A. 3B. 4C. 5D. 64.对于顺序存储的有序表(5,12,20,26,37,42,46,50,64),若采用折半查找,则查找元素26的比较次数为()。
A. 2B. 3C. 4D. 55.若根据查找表(23,44,36,48,52,73,64,58)建立哈希表,采用h(K)=K%13计算哈希地址,则元素64的哈希地址为( )。
A. 4B. 8C. 12D. 136.若根据查找表(23,44,36,48,52,73,64,58)建立哈希表,采用h(K)=K%7计算哈希地址,则哈希地址等于3的元素个数( )。
A. 1B. 2C. 3D. 47.若根据查找表建立长度为m的哈希表,采用线性探测法处理冲突,假定对一个元素第一次计算的哈希地址为d,则下一次的哈希地址为( )。
A. dB. d+1C. (d+1)/mD. (d+1)%m二、填空题1. 以顺序查找方法从长度为n的顺序表或单链表中查找一个元素时,平均查找长度为________,时间复杂度为________。
2. 以折半查找方法在一个查找表上进行查找时,该查找表必须组织成________存储的________表。
3. 从有序表(12,18,30,43,56,78,82,95)中分别折半查找43和56元素时,其比较次数分别为________和________。
4. 假定对长度n=50的有序表进行折半查找,则对应的判定树高度为________,最后一层的结点数为________。
5. 在一棵二叉排序树中,每个分支结点的左子树上所有结点的值一定________该结点的值,右子树上所有结点的值一定________该结点的值。
6. 向一棵二叉排序树中插入一个元素时,若元素的值小于根结点的值,则接着向根结点的________插入,若元素的值大于根结点的值,则接着向根结点的________插入。
7. 假定对线性表(38,25,74,52,48)进行哈希存储,采用H(K)=K %7作为哈希函数,采用线性探测法处理冲突,则在建立哈希表的过程中,将会碰到________次存储冲突。
8. 假定对线性表(38,25,74,52,48)进行哈希存储,采用H(K)=K %7作为哈希函数,采用线性探测法处理冲突,则平均查找长度为________。
9. 对线性表(18,25,63,50,42,32,90)进行哈希存储时,若选用H(K)=K % 9作为哈希函数,则哈希地址为0的元素有________个,哈希地址为5的元素有________个。
三、应用题1. 已知一个顺序存储的有序表为(15,26,34,39,45,56,58,63,74,76),试画出对应的折半查找判定树,求出其平均查找长度。
2.假定一个线性表为(38,52,25,74,68,16,30,54,90,72),画出按线性表中元素的次序生成的一棵二叉排序树,求出其平均查找长度。
3. 假定一个待哈希存储的线性表为(32,75,29,63,48,94,25,46,18,70),哈希地址空间为HT[13],若采用除留余数法构造哈希函数和线性探测法处理冲突,试求出每一元素在哈希表中的初始哈希地址和最终哈希地址,画出最后得到的哈希表,求出平均查找长度。
元素初始哈希地址最终哈希地址哈希表4. 假定一个待哈希存储的线性表为(32,75,29,63,48,94,25,36,18,70,49,80),哈希地址空间为HT[12],若采用除留余数法构造哈希函数和拉链法处理冲突,试画出最后得到的哈希表,并求出平均查找长度。
第8章内部排序【例8-1】已知关键字序列(12,77,21,65,38,7,38,53),给出采用直接插入排序方法按关键字递增序排列时的每一趟结果。
解:初始1趟2趟3趟4趟5趟6趟7趟(表示有序区)【例8-2】待排序列为(39,80,76,41,13,29,50,78,30,11,100,7,41,86),步长因子分别取5、3、1,给出采用希尔排序方法按关键字递增序排列时的每一趟结果。