在线预览
正文内容一、选择题(每题 4 分,共 16 分)
每次都从中间开始找、把范围缩小一半的方法叫( )。
A. 逐个查找 B. 二分查找 C. 随机查找 D. 排 序
答案:B二分查找能够使用的前提是( )。
A. 数据数量是偶数 B. 数据已经排好顺序 C. 数据都是两位数 D. 数据都在 100 以内
答案:B 解析:只有有序,「中间」和「丢一半」才有意义。在 1~100 中找任意一个数,逐个查找最多要( )次。
A. 7 次 B. 10 次 C. 100 次 D. 50 次
答案:C比较两种算法谁的效率更高,可以看( )。
A. 谁写得更长 B. 谁的最多次数更少 C. 谁的字更好看 D. 谁用的纸更多
答案:B
二、判断题(每题 4 分,共 8 分)
- 在有序的 1~100 中猜数,第一次猜 50 最能快速缩小范围。( ) 答案:√
- 猜数时逐个猜和每次猜一半,最多需要的次数差不多。( ) 答案:× 解析:逐个猜最多 100 次,二分查找约 7 次,差距很大。
三、填空题(每题 4 分,共 8 分)
- 每次把查找范围缩小一半的方法,叫作__________查找。
答案:二分 - 二分查找要求数据必须已经__________排列。
答案:有序(学生写「排好序」「从小到大」均可)
四、简答题(8 分)
在 1~16 中找一个数,请写出用二分查找的前三次问法,并说明每次范围怎么变化。
参考答案:
- 第一次猜 8:若大了,范围变成 1
7;若小了,范围变成 916。 - 第二次猜剩余范围中间的数(如 4 或 12)。
- 第三次再取新范围中间的数继续。
- 变化规律:每问一次,范围大约缩小一半,所以很快就能找到。
(说明清楚「每次都取中间、范围减半」即可得分。)
同章节相关练习
去刷题 →1
每次都从中间开始找、把范围缩小一半的方法叫( )。
2
二分查找能够使用的前提是( )。
3
在 1~100 中找任意一个数,逐个查找最多要( )次。
4
在 1~100 中用二分查找,最多大约需要( )次。
5
在有序的 1~100 中猜数,第一次猜 50 最能快速缩小范围。( )
6
逐个查找和二分查找,最多需要的次数差不多。( )
7
每次把查找范围缩小一半的方法,叫作__________查找。
8
比较两种算法的效率,可以看它们在最坏情况下需要的__________。