zoukankan      html  css  js  c++  java
  • 递归

    定义:在定义自身的过程中又直接或间接调用自身的一种算法。

    组成元素:
        1.递归调用
        2.递归终止条件
        
    适用范围:
        1.一个问题可被分解为若干层简单的子问题
        2.子问题与其上一层问题解决方法一致
        3.外层问题的解决依赖子问题的解决
        
    范例:Fibonacci数列
    1.Fibonacci类

     1 /**
     2  * @Description: 斐波那契数列:
     3  * 1,1,2,3,5,8,13,21
     4  * F(n) = F(n-1) + F(n-2)
     5  * @author Ivy
     6  */
     7 public class Fibonacci {
     8 
     9     /**
    10      *
    11      * @Description: 计算F(n)
    12      * @param n 月份数
    13      * @return F(n) 兔子的总对数
    14      */
    15     public int F(int n) {
    16         if (n < 1) {
    17             return 0;
    18         } else if (n == 1 || n == 2) {
    19             return 1;
    20         } else {
    21             return F(n-1) + F(n-2);
    22         }
    23     }
    24     
    25 }


    2.测试类

     1 public class FibonacciTest {
     2 
     3     public static void main(String[] args) {
     4 
     5         Fibonacci fibonacci = new Fibonacci();
     6         int n = 8;
     7         System.out.println("月数:" + n + ",兔子的对数:" + fibonacci.F(n));
     8         
     9     }
    10 
    11 }


    范例:用递归计算n!
    1.阶乘类 - Factorial

     1 /**
     2  * @Description: 用递归计算n!
     3  * @author Ivy
     4  */
     5 public class Factorial {
     6 
     7     public int recur(int n){
     8         if (n == 0) {
     9             return 1;
    10         } else {
    11             return n*recur(n - 1);
    12         }
    13     }
    14     
    15 }


    2.测试类

     1 public class FactorialTest {
     2 
     3     public static void main(String[] args) {
     4         Factorial factorial = new Factorial();
     5         int n = 4;
     6         System.out.println(n + "!:" + factorial.recur(n));
     7 
     8     }
     9 
    10 }




        
       

  • 相关阅读:
    XP下关于快速切换用户功能的相关编程
    CRC原理及其逆向分析方法
    爱的十个秘密4.给予的力量
    爱的十个秘密1.序幕
    隐式链接无.LIB动态链接库
    电影图标黑客帝国(The Matrix)
    手机图标
    圣斗士图标:十二星座黄金圣衣
    MAC风格图标
    GB码与BIG5
  • 原文地址:https://www.cnblogs.com/ivy-xu/p/5749522.html
Copyright © 2011-2022 走看看