1、“.....而是在每个阶段都看上去是个最优的决策在定的标准下。不断地将问题实例归纳为更小的相似的子问题,并期望做出的局部最优的选择产生个全局得最优解。由于汽车是由始向终点方向开的,我们最大的麻烦就是不知道在哪个加油站加油可以使我们既可以到达终点又可以使我们加油次数最少。提出问题是解决的开始。为了着手解决遇到的困难,取得最优方案。我们可以假设不到万不得已我们不加油,即除非我们油箱里的油不足以开到下个加油站,我们才加次油。在局部找到个最优的解。每加次油我们可以看作是个新的起点,用相同的递归方法进行下去。最终将各个阶段的最优解合并为原问题的解得到我们原问题的求解......”。
2、“.....即贪心选择来达到。对于个具体的问题,要确定它是否具有贪心性质,我们必须证明每步所作的贪心选择最终导致问题的个整体最优解。该题设在加满油后可行驶的千米这段路程上任取两个加油站,且距离始点比距离始点近,则若在加油不能到达终点那么在加油定不能到达终点,因为,即在点加油可行驶的路程比在点加油可行驶的路程要长千米,所以只要终点不在之间且在的右边的话,根据贪心选择,为使加油次数最少就会选择距离加满油得点远些的加油站去加油,因此,加油次数最少满足贪心选择性质。最优子结构性质当个问题大的最优解包含着它的子问题的最优解时,称该问题具有最优子结构性质......”。
3、“.....则易知若在第个加油站加油时则是从到这段路程上加油次数最少且这段路程上的加油站个数为的最优解,即每次汽车中剩下的油不能在行驶到下个加油站时我们才在这个加油站加次油,每个过程从加油开始行驶到再次加油满足贪心且每次加油后相当于与起点具有相同的条件,每个过程都是相同且独立,也就是说加油次数最少具有最优子结构性质。贪心算法时间复杂度分析由于若想知道该在哪个加油站加油就必须遍历所有的加油站,且不需要重复遍历,所以时间复杂度为。第章最优合并问题问题的提出给定个排好序的序列,用路合并算法将这个序列合并成个序列。假设所采用的路合并算法合并个长度分别为和的序列需要次比较。试设计个算法确定合并这个序列的最优合并顺序......”。
4、“.....为了进行比较,还需要确定合并这个序列的最差合并顺序,使所需的总比较次数最多。原理分析这个程序比较适合用堆,最优用最小堆,最差用最大堆以最优合并为例使用各序列的长度建堆两个最小的元素出堆,计算这两序列合并需要的比较次数,该次数入堆重复,直到堆只剩下个元素最后剩下的元素即为题目的解。算法时间复杂度分析复杂度为,排序后,最小的两个序列是前两个,计算最小的两个序列的合并次数后,该次数不定是新的最小的两个序列之,所以在下次合并前,必需使数组仍旧有序,让最小的两个序列在数组的最前面,为使数组重新有序,可以使用类似插入排序的插入过程,将新得到的数字直接插入到数组,这样不需要额外的储存空间,但总复杂度是......”。
5、“.....实际上也必须需要额外的的空间来保存排序后的结果,如果将排序后的数组按照顺序作成个链表,那么链表的最前的两节点就是最小的两序列,计算合并次数,删除该两节点,将新得到的次数插入到链表,注意到,后面需要插入的数字肯定比前面插入的数字大,所以从上次插入的位置之后查找新的插入位置,这样插入数字的总的时间复杂度是的,总的时间复杂度仍旧是,并使用了额外的的空间。第章会场安排问题问题的提出假设要在足够多的会场里安排批活动,并希望使用尽可能少的会场。设计个有效的贪心算法进行安排。这个问题实际上是著名的图着色问题。若将每个活动作为图的个顶点,不相容活动间用边相连。使相邻顶点着有不同颜色的最小着色数......”。
6、“.....数据输入由文件给出输入数据。第行有个正整数,表示有个待安排的活动。接下来的行中,每行有个正整数,分别表示个待安排的活动开始时间和结束时间。时间以点开始的分钟计。结果输出将编程计算出的最少会场数输出到文件。输入文件示例输出文件示例编码分析根据会场安排问题的定义,首先将问题简化为找出两个活动,若和满足或,则称这两个活动相容,即问题转化为要求找出最多相容会场集合。问题简化为对相容会场的寻找,下面用贪心方法分析过程,根据题意,选取种量度标准,然后按量度标准对个输入排序,按顺序次输入个量。如果这个输入和当前已构成在这种量度意义下的部分最优解加在起不能产生个可行解,则不把此输入加到这部分解中......”。
7、“.....那么问题转化为对度量标准的寻找,判断各个数据是否可以包含在解向量中去,然后根据目标函数来选择最优解。贪心算法将所有活动按结束时间排序,得到活动集合先将选入结果集合中,即依次扫描每个活动如果的开始时间晚于最后个选入的活动的结束时间,则将选入中,否则放弃。最优解证明若,是按结束时间排序的活动集合,则具有最早的结束时间,设存在个最优安排不包含,并以开始,则易见∪也是最优的活动安排依此类推,即可推出上述活动都为中的不相容最优活动。俗话所的好的纸上得来终觉浅,绝知此事要躬行,那么让我们举个例子来进步清晰化问题下面表格有个活动,并给出各个活动的开始时间与结束时间......”。
8、“.....如表所示。表会场活动安排表活动开始时间结束时间根据贪心策略现将个活动的结束时间排序为解说方便上表格已经排好排序可用快速排序。毋庸置疑将先分配入会场集合,然后按照顺序找出下个活动,使得其开始时间小于的结束时间即满足时间不冲突,如图易知为,再将分配给,以后每步骤都重复如的选择。经过第轮的筛选可知会场集合中包含,。此时已经没有活动在相容于会场中,那么再继续对进行同样的选取,同理,。那么得出总的会场数目。算法时间复杂度分析算法的时间复杂度为。第章贪心算法的实现语言概述据统计,目前世界上支持面向对象程序设计的语言已近百种,除了大多数是供研究用的非商业软件外,具有强大竞争力语言也很多......”。
9、“.....它们以其全新的语言规范和与开发工具紧密结合的编程机制为特征,特别是作为第个面向对象语言在程序设计领域的影响非常巨大。另类则是传统的重要编程语言向面向对象程序设计靠拢的结果,除了语言之外,几乎所有成功的语言,包括语言语言语言和语言,都发展了它们自己的面向对象的新版本,其中常见的有开发的和等。语言最初被称为带类的也应属于此类。这种情形在结构程序设计时期也曾出现,些传统的编程语言如语言都开发了结构化的新版本,不过其影响还是没有超过和语言。在这样的面向对象的语言之林中,语言能够获得成功,应该说不是偶然的。在程序设计语言的历史上,在所有比较成功的高级语言中,语言有着不少与众不同的地方......”。
1、手机端页面文档仅支持阅读 15 页,超过 15 页的文档需使用电脑才能全文阅读。
2、下载的内容跟在线预览是一致的,下载后除PDF外均可任意编辑、修改。
3、所有文档均不包含其他附件,文中所提的附件、附录,在线看不到的下载也不会有。