一、什麼是遞歸算法算法
遞歸算法就是直接或間接調用本身的算法函數
二、遞歸思想spa
遞歸就是方法裏調用自身設計
在使用遞歸策略時,必須有一個明確的遞歸結束條件,稱爲遞歸出口code
遞歸算法代碼顯得很簡潔,但遞歸算法解題的運行效率較低。因此不提倡用遞歸設計程序。遞歸
在遞歸調用的過程當中系統爲每一層的返回點、局部量等開闢了棧來存儲。遞歸次數過多容易形成棧溢出等,因此通常不提倡用遞歸算法設計程序。string
要點:class
在作遞歸算法的時候,必定把握出口,也就是作遞歸算法必需要有一個明確的遞歸結束條件。這一點是很是重要的。其實這個出口就是一個條件,當知足了這個條件的時候咱們就再也不遞歸了。效率
package campu;
程序
class
Factorial {
//遞歸函數
int
fact(
int
n){
if
(n==1){
return
1;
}
else
{
return
fact(n-1)*n;
}
}
}
public
class
TestFactorial{
public
static
void
main(String[] args) {
Factorial factorial=
new
Factorial();
System.
out
.println(
"factorial(10)="
+factorial.fact(10));
}
}