题目详情

现需要申请一些场地举办一批活动,每个活动有开始时间和结束时间。在同一个场地,如果一个活动结束之前,另一个活动开始,即两个活动冲突。若活动 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.Θ(lgn)
  • B.Θ(n)
  • C.Θ(nlgn)
  • D.Θ(n2)

正确答案及解析

正确答案
C
解析

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

你可能感兴趣的试题

单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.V(S2)和P(S4)
  • B.P(S2)和V(S4)
  • C.P(S2)和P(S4)
  • D.V(S2)和V(S4)
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.V(S1)P(S2)和V(S3)
  • B.P(S1)V(S2)和V(S3)
  • C.V(S1)V(S2)和V(S3)
  • D.P(S1)P(S2)和V(S3)
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.P(S4)和V(S4)V(S5)
  • B.V(S5)和P(S4)P(S5)
  • C.V(S3)和V(S4)V(S5)
  • D.P(S3)和P(S4)V(P5)
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.P(S3)和V(S4)V(S5)
  • B.V(S3)和P(S4)P(S5)
  • C.P(S3)和P(S4)P(S5)
  • D.V(S3)和V(S4)V(S5)
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.P(S2)和P(S4)
  • B.P(S2)和V(S4)
  • C.V(S2)和P(S4)
  • D.V(S2)和V(S4)
查看答案

相关题库更多 +