题目详情

现需要申请一些场地举办一批活动,每个活动有开始时间和结束时间。在同一个场地,如果一个活动结束之前,另一个活动开始,即两个活动冲突。若活动 A 从 1 时间开始,5 时间结束,活动 B 从 5 时间开始,8 时间结束,则活动 A 和 B 不冲突。现要计算 n 个活动需要最少场地数。求解该问题基本思路如下(假设需要场地数为 m,活动数为 n,场地集合为 P1,P2,…,Pm),初始条件 Pi均无活动安排:(1)采用快速排序算法对 n 个活动开始时间从小到大排序,得到活动 a1,a2,…,an。对每个活动 ai,i 从 1 到 n,重复步骤(2)、(3)和(4);(2)从 p1开始,判断 ai与 P1最后一个活动是否冲突,若冲突,考虑下一个场地 P2,…;(3)一旦发现 ai与某个 Pj最后一个活动不冲突,则将 ai安排到 Pj,考虑下一个活动;(4)若 ai与所有己安排活动 Pj最后一个活动均冲突,则将 ai安排到一个新场地,考虑下一个活动;(5)将 n 减去没有安排活动场地数即可得到所用最少场地数算法首先采用了快速排序算法进行排序,其算法设计策略是(请作答此空 );后面步骤采用算法设计策略是( )。整个算法时间复杂度是()。下表给出了 n=11 活动集合,根据上述算法,得到最少场地数为()。

中级软件设计师,章节练习,基础复习,中级软件设计师算法

  • A.分治
  • B.动态规划
  • C.贪心
  • D.回溯

正确答案及解析

正确答案
A
解析

快速排序由C.A.R.Hoare在1962年提出。它基本思想是:通过一趟排序将要排序数据分割成独立两部分,其中一部分所有数据都比另外一部分所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。快速排序采用思想是分治思想。贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好选择。也就是说,不从整体最优上加以考虑,他所做出是在某种意义上局部最优解。整个算法时间复杂度是O(nlogn)。场地上可以安排活动1、8、11为一个场地;活动2、6、9一个场地;活动3为一个场地;活动4、7为一个场地;活动5、10为一个场地,共5个场地。

你可能感兴趣的试题

单选题

设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
查看答案

相关题库更多 +