题目详情

阅读下列说明和 C 代码,回答问题1至问题 3 ,将解答写在对应栏内。【说明】假币问题:有 n 枚硬币,其中有一枚是假币,己知假币的重量较轻。现只有一个天平,要求用尽量少的比较次数找出这枚假币。【分析问题】 将 n 枚硬币分成相等的两部分 : (1) 当 n 为偶数时,将前后两部分,即 1...n/2 和 n/2+1...0 ,放在天平的两端,较轻的一端里有假币,继续在较轻的这部分硬币中用同样的方法找出假币 : (2) 当 n 为奇数时,将前后两部分,即 1..(n -1)/2 和 (n+1)/2+1...0 ,放在天平的两端,较轻的一端里有假币,继续在较轻的这部分硬币中用同样的方法找出假币;若两端重量相等,则中间的硬币,即第 (n+1)/2 枚硬币是假币。

中级软件设计师,章节练习,数据结构与算法

中级软件设计师,章节练习,数据结构与算法

【问题一】 根据题干说明,填充 C 代码中的空( 1 ) - ( 3 )【问题二】根据题干说明和 C 代码,算法采用了( )设计策略。【问题三】若输入的硬币数为 30 ,则最少的比较次数为( ),最多的比较次数为( )。

正确答案及解析

正确答案
解析

【问题一】( 1 ) first+(last-first)/2+1 或 (first+last)/2+1 ( 2 ) firstSum大于lastSum( 3 )first+(last-first)/2 或 (first+last)/2【问题二】分治法、O ( nlogn ) 【问题三】2 、 4

你可能感兴趣的试题

单选题

设16位浮点数,其中阶符1位、阶码值6位、数符1位、尾数8位。若阶码用移码表示,尾数用补码表示,则该浮点数所能表示的数值范围是( )。

中级嵌入式系统设计师,章节练习,软件水平考试《中级嵌入式系统设计师》

  • A.见图A
  • B.见图B
  • C.见图C
  • D.见图D
查看答案
单选题

平均故障间隔时间MTBF用以表示系统平均无故障可正常运行的时间,下列与MTBF有关的叙述不正确的是______。

中级嵌入式系统设计师,章节练习,软件水平考试《中级嵌入式系统设计师》

  • A.见图A
  • B.见图B
  • C.见图C
  • D.见图D
查看答案
问答题

初级网络管理员,专项练习,软件水平考试《网络管理员》模拟题

初级网络管理员,专项练习,软件水平考试《网络管理员》模拟题

查看答案
单选题

中级软件设计师,模拟试题,2022年软件水平考试《中级软件设计师》模拟题

  • A.A
  • B.B
  • C.C
  • D.D
查看答案
单选题

中级软件设计师,模拟试题,2022年软件水平考试《中级软件设计师》模拟题

  • A.R
  • B.S
  • C.RS
  • D.R,S
查看答案

相关题库更多 +