人理解迭代,神理解遞歸。
關(guān)于這個問題,發(fā)現(xiàn)一篇博客,寫得很不錯。地址:http://blog.sina.com.cn/s/blog_674fddf70100ih5w.html
摘錄如下:
二者相同的步驟是遞推公式的建立,因二都都是利用計(jì)算機(jī)運(yùn)算速度快的特點(diǎn)來讓計(jì)算機(jī)重復(fù)相同的公式而求得值;第二個相同點(diǎn)是二者都有遞推公式的終結(jié)條件。
二者的不同點(diǎn)在于分解問題的方式:遞歸是從要的結(jié)果向一個初始值回歸分解;而迭代是從一個初始值開始,經(jīng)過有限次數(shù)的遞推,得到一個結(jié)果;從空間構(gòu)型來看遞歸要比迭代復(fù)雜的多,迭代是從初始值到結(jié)果,而遞歸是從未知結(jié)果到已知初始值再到所求的結(jié)果。
在編程時,二者的重點(diǎn)在于遞推公式的總結(jié)。迭代的側(cè)重點(diǎn)在于如何向結(jié)果靠近;遞歸的側(cè)重點(diǎn)在于如何分解到原點(diǎn)。