欢迎来到天天文库
浏览记录
ID:40230373
大小:273.00 KB
页数:26页
时间:2019-07-27
《国外算法设计与分析课件12》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、DynamicProgrammingCopyrightLiZimao@2007-2008-1SCUECExpectedOutcomesStudentsshouldbeabletoWritedownthefourstepsofdynamicprogrammingComputeaFibonaccinumberandthebinomialcoefficientsbydynamicprogrammingComputethelongestcommonsubsequenceandtheshortestcommonsupersequenceoftwogivensequencesbyd
2、ynamicprogrammingSolvetheinvestproblembydynamicprogrammingCopyrightLiZimao@2007-2008-1SCUECDynamicProgrammingDynamicProgrammingisageneralalgorithmdesigntechnique.InventedbyAmericanmathematicianRichardBellmaninthe1950stosolveoptimizationproblemsMainidea:solveseveralsmaller(overlapping)sub
3、problemsrecordsolutionsinatablesothateachsubproblemisonlysolvedoncefinalstateofthetablewillbe(orcontain)solutionDynamicprogrammingvs.divide-and-conquerpartitionaproblemintooverlappingsubproblemsandindependentonesstoreandnotstoresolutionstosubproblemsCopyrightLiZimao@2007-2008-1SCUECFrame
4、ofDynamicProgrammingProblemsolvedSolutioncanbeexpressedinarecursivewaySub-problemsoccurrepeatedlySubsequenceofoptimalsolutionisanoptimalsolutiontothesub-problemFrameCharacterizethestructureofanoptimalsolutionRecursivelydefinethevalueofanoptimalsolutionComputethevalueofanoptimalsolutionina
5、bottom-upfashionConstructanoptimalsolutionfromcomputedinformationCopyrightLiZimao@2007-2008-1SCUECThreebasiccomponentsThedevelopmentofadynamicprogrammingalgorithmhasthreebasiccomponents:Arecurrencerelation(fordefiningthevalue/costofanoptimalsolution);Atabularcomputation(forcomputingtheva
6、lueofanoptimalsolution);Abacktracingprocedure(fordeliveringanoptimalsolution).CopyrightLiZimao@2007-2008-1SCUECExample:FibonaccinumbersRecalldefinitionofFibonaccinumbers:f(0)=0f(1)=1f(n)=f(n-1)+f(n-2)ComputingthenthFibonaccinumberrecursively(top-down):f(n)f(n-1)+f(n-2)f(n-2)+f(n-3)f(n-3)
7、+f(n-4)...CopyrightLiZimao@2007-2008-1SCUECExample:FibonaccinumbersComputingthenthfibonaccinumberusingbottom-upiteration:f(0)=0f(1)=1f(2)=0+1=1f(3)=1+1=2f(4)=1+2=3f(5)=2+3=5f(n-2)=f(n-1)=f(n)=f(n-1)+f(n-2)ALGORITHMFib(n)F[0]0,F[1]1fori2tondoF[i]F[i-1]+F[i-2]ret
此文档下载收益归作者所有