遞歸的基本概念:程序調用自身的編程技巧,就是函數自己調用自己;
一個函數在定義中直接或者間接調用自身的一種方法,它通常是將一個大型的複雜的問題分解爲與之相似的小的問題,可以極大的減少代碼量;
遞歸有兩個特點:
1)函數自身調用自身;
2)使用遞歸時必須要有一個明確的出口;
遞歸分兩個階段:
1)遞推:把複雜的問題推到比原問題簡單的子問題的求解;
2)迴歸:當獲取最簡單的情況後,逐步返回,依次得到複雜問題的解;
由於遞歸引起一系列函數的調用,而且可能存在一些重複的計算,因此效率並不高;
迭代的意思是從一個已知的問題的解出發,推到出複雜問題的解,如果遞歸是自身不斷調用自身,那麼迭代就是A不斷調用B;