遞歸、迭代、動態規劃的區別

遞歸的基本概念:程序調用自身的編程技巧,就是函數自己調用自己;

一個函數在定義中直接或者間接調用自身的一種方法,它通常是將一個大型的複雜的問題分解爲與之相似的小的問題,可以極大的減少代碼量;

遞歸有兩個特點:

1)函數自身調用自身;

2)使用遞歸時必須要有一個明確的出口;

遞歸分兩個階段:

1)遞推:把複雜的問題推到比原問題簡單的子問題的求解;

2)迴歸:當獲取最簡單的情況後,逐步返回,依次得到複雜問題的解;

由於遞歸引起一系列函數的調用,而且可能存在一些重複的計算,因此效率並不高;

迭代的意思是從一個已知的問題的解出發,推到出複雜問題的解,如果遞歸是自身不斷調用自身,那麼迭代就是A不斷調用B;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章