肥胖卷的肥蛋卷
运用分治策略解决的问题一般来说具有以下特点:1、原问题可以分解为多个子问题这些子问题与原问题相比,只是问题的规模有所降低,其结构和求解方法与原问题相同或相似。2、原问题在分解过程中,递归地求解子问题由于递归都必须有一个终止条件,因此,当分解后的子问题规模足够小时,应能够直接求解。3、在求解并得到各个子问题的解后应能够采用某种方式、方法合并或构造出原问题的解。不难发现,在分治策略中,由于子问题与原问题在结构和解法上的相似性,用分治方法解决的问题,大都采用了递归的形式。在各种排序方法中,如归 并排序、堆排序、快速排序等,都存在有分治的思想 。
hanzhe2013
一、动态规划的基本思想在比较基本的算法设计思想里,动态规划是比较难于理解,难于抽象的一种,但是却又十分重要。动态规划的实质是分治思想和解决冗余,因此它与分治法和贪心法类似,它们都是将问题的实例分解为更小的、相似的子问题,但是动态规划又有自己的特点。贪心法的当前选择可能要依赖于已经作出的选择,但不依赖于还未做出的选择和子问题,因此它的特征是由顶向下,一步一步地做出贪心选择,但不足的是,如果当前选择可能要依赖子问题的解时,则难以通过局部的贪心策略达到全局最优解。相比而言,动态规划则可以处理不具有贪心实质的问题。在用分治法解决问题时,由于子问题的数目往往是问题规模的指数函数,因此对时间的消耗太大。动态规划的思想在于,如果各个子问题不是独立的,不同的子问题的个数只是多项式量级,如果我们能够保存已经解决的子问题的答案,而在需要的时候再找出已求得的答案,这样就可以避免大量的重复计算。由此而来的基本思路是,用一个表记录所有已解决的子问题的答案,不管该问题以后是否被用到,只要它被计算过,就将其结果填入表中。比较感性的说,其实动态规划的思想是对贪心算法和分治法的一种折衷,它所解决的问题往往不具有可爱的贪心实质,但是各个子问题又不是完全零散的,这时候我们用一定的空间来换取时间,就可以提高解题的效率。二、动态规划的基本步骤动态规划算法通常用于求解具有某种最优性质的问题。在这类问题中,可能会有许多可行解。每一个解都对应于一个值,我们希望找到具有最优值(最大值或最小值)的那个解。设计一个动态规划算法,通常可以按以下几个步骤进行:(1)找出最优解的性质,并刻画其结构特征。(2)递归地定义最优值。(3)以自底向上的方式计算出最优值。(4)根据计算最优值时得到的信息,构造一个最优解。其中(1)——(3)步是动态规划算法的基本步骤。在只需要求出最优值的情形,步骤(4)可以省去。若需要求出问题的一个最优解,则必须执行步骤(4)。此时,在步骤(3)中计算最优值时,通常需记录更多的信息,以便在步骤(4)中,根据所记录的信息,快速构造出一个最优解。三、典型的动态规划举例——矩阵连乘问题作为经典的动态规划算法举例,矩阵连乘问题很好地展现了动态规划的特点和实用价值。给定n个矩阵{A1,A2,...,An},其中Ai与Ai+1是可乘的,i=1,2,...n-1。现在要计算这n个矩阵的连乘积。由于矩阵的乘法满足结合律,所以通过加括号可以使得计算矩阵的连乘积有许多不同的计算次序。然而采用不同的加扩号方式,所需要的总计算量是不一样的。若A是一个p*q矩阵,B是一个q*r矩阵,则其乘积C=AB是一个p*r矩阵。如果用标准算法计算C,总共需要pqr次数乘。现在来看一个例子。A1,A2,A3分别是10*100,100*5和5*50的矩阵。如果按照((A1A2)A3)来计算,则计算所需的总数乘次数是10*100*5+10*5*50=7500。如果按照(A1(A2A3))来计算,则需要的数乘次数是100*5*50+10*100*50=75000,整整是前者的10倍。由此可见,在计算矩阵连乘积时,不同的加括号方式所导致的不同的计算对计算量有很大的影响。如何确定计算矩阵连乘积A1A2,...,An的一个计算次序,使得依此次序计算矩阵连乘积需要的数乘次数最少便成为一个问题。对于这个问题,穷举法虽然易于入手,但是经过计算,它所需要的计算次数是n的指数函数,因此在效率上显得过于低下。现在我们按照动态规划的基本步骤来分析解决这个问题,并比较它与穷举法在时间消耗上的差异。(1)分析最优解的结构。现在,将矩阵连乘积AiAi+1...Aj简记为A[i:j]。对于A[1:n]的一个最优次序,设这个计算次序在矩阵Ak和Ak+1之间将矩阵链断开(1<=k
问题一:请提供几份毕业论文指导老师评阅意见(评语) wenku.baidu/...JRWfJW 问题二:毕业论文评阅老师评语 该生在毕业论文(设计
心理健康 教育 是素质教育的重要组成部分,我们要根据学生生理心理发展的规律,运用心理学的教育 方法 ,培养学生良好的心理素质,促进学生整体素质全面提高的
随着依法治税、依法行政理念在税收实践中的贯彻落实,法治意识在税务系统逐步确立。但受传统人治思维影响,管理不规范、服务不到位等现象仍有发生,纳税人合法权益还不能完
运用分治策略解决的问题一般来说具有以下特点:1、原问题可以分解为多个子问题这些子问题与原问题相比,只是问题的规模有所降低,其结构和求解方法与原问题相同或相似。2
比如可以通过springmvc, spring, mybatis写一套二手交易平台, 自己把分类改一下完全满足毕设要求 这个是我写的二手平台, 看起来还不错吧,