Recursive and Dynamic Programming

{"title":"Recursive and Dynamic Programming","authors":"","doi":"10.1145/3568325.3568333","DOIUrl":null,"url":null,"abstract":"is easier to solve if its solution is known or if it is an instance of the original problem but over a smaller data set. For example, if you have to sum eight numbers, you may divide the task into two subtasks of summing four numbers each, and then add the two results. Each subtask may be further divided into two subtasks of adding a pair of numbers. A problem is typically divided into subproblems of the same kind in recursive programming, and the same solution procedure is applied to each of the subprob­ lems, further subdividing them. A recursive program has to specify the method of problem decomposition and solution combination and also the solutions for the very smallest subproblems that cannot be decomposed any further. The theoretical justification of recursive programming is mathematical induc­ tion. In fact, recursion and induction are so closely linked that they are often mentioned in the same breath; we ought to have used the term “inductive pro­ gramming” for this style of programming.","PeriodicalId":302246,"journal":{"name":"Effective Theories in Programming Practice","volume":"13 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Effective Theories in Programming Practice","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3568325.3568333","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

is easier to solve if its solution is known or if it is an instance of the original problem but over a smaller data set. For example, if you have to sum eight numbers, you may divide the task into two subtasks of summing four numbers each, and then add the two results. Each subtask may be further divided into two subtasks of adding a pair of numbers. A problem is typically divided into subproblems of the same kind in recursive programming, and the same solution procedure is applied to each of the subprob­ lems, further subdividing them. A recursive program has to specify the method of problem decomposition and solution combination and also the solutions for the very smallest subproblems that cannot be decomposed any further. The theoretical justification of recursive programming is mathematical induc­ tion. In fact, recursion and induction are so closely linked that they are often mentioned in the same breath; we ought to have used the term “inductive pro­ gramming” for this style of programming.
递归与动态规划
如果它的解是已知的,或者如果它是原始问题的一个实例,但在一个较小的数据集上,则更容易解决。例如,如果要对8个数字求和,可以将任务分成两个子任务,每个子任务分别对4个数字求和,然后将两个结果相加。每个子任务可以进一步分为两个添加一对数字的子任务。在递归规划中,一个问题通常被划分为同类的子问题,并且对每个子问题应用相同的求解过程,进一步细分它们。递归程序必须指定问题分解和解组合的方法,以及不能再分解的最小子问题的解。递归规划的理论论证是数学归纳法。事实上,递归和归纳法是如此紧密地联系在一起,以至于它们经常被同时提到;对于这种编程风格,我们应该使用“归纳编程”这个术语。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信