遞回
方法就到這里了,明天開始陣列的學習,注意:方法很重要能解決很多問題一定要多練習!
遞回詳解
-
A方法呼叫B方法我們很容易理解,
-
遞回就是A方法呼叫A方法,自己呼叫自己,
-
作用:利用遞回可以用簡單的程式來解決一些復雜的問題,它通常把一個大型復雜的問題層層轉化為一個與原問題相似的規模較小的問題來求解,遞回策略只需要少量的程式就可以描述出解題程序中所需要的多次重復計算,大大減少了程式的代碼量,遞回的能力在于用有限的陳述句來定義物件的無限集合,
-
遞回的結構包括兩個部分:
- 遞回頭:什么時候不呼叫自身方法,如果沒有頭將陷入死回圈,
- 遞回體:什么時候呼叫自身方法,
-
邊界條件:到最后一個數時,程式會執行到底
-
前階段
-
回傳階段n*(n-1)
-
例子
package com.yuecheng.method; public class Demo07 { public static void main(String[] args) { //階乘 //2!:1*2 //3!:1*2*3 //4!:1*2*3*4 //5!:1*2*3*4*5 System.out.println(f(3)); } //用遞回實作階乘 public static int f (int n) { if (n==1){ return 1; }else{ return n*f(n-1);//不斷呼叫自身直到n==1 } } }- 注意java使用的是堆疊機制,遞回太多會卡死,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/281347.html
標籤:其他
