递归算法:

 (1). 求:1*2*3*4*5.......*n的值

  1. package suanfa;  
  2. /** 
  3.  * Created by tl on 2016/4/10. 
  4.  */  
  5. public class Digui {  
  6.     public static int digui(int n){  
  7.         if(n==1||n==0){  
  8.             return n;  
  9.         }else{  
  10.             System.out.println("执行第" + n + "次");  
  11.             return n*digui(n-1);  
  12.         }  
  13.     }  
  14. public static void main (String[] args){  
  15.     System.out.print(digui(n));  

(2). 求1+2+3+4+5......+n的值

  1.     static int  count(int n){  
  2.         if(n>0){  
  3.             return n+count(n-1);  
  4.         }else{  
  5.             return 0;  
  6.         }  
  7.   
  8.     }  
  9.   
  10.     public static void main(String args[])  
  11.     {  
  12.         int sum=count(n);  
  13.         System.out.println(sum);  
  14.     }  

(3).求1,1,2,3,5,8,13,21,34.....n位的值

  1. static int count(int n){  
  2.     if(n==1||n==2) {  
  3.         return 1;  
  4.     }  
  5.      return count(n-1)+count(n-2);  
  6. }  
  7.   
  8. public static void main(String args[])  
  9. {  
  10.     int sum=count(n);  
  11.     System.out.println(sum);  


猜你喜欢

转载自blog.csdn.net/qq_40223609/article/details/80251442