算法 - 递归
递归(recursion):程序调用自身的编程技巧
递归满足2个条件:
1.有反复执行的过程(调用自身)
2.有跳出反复执行过程的条件(递归出口)
代码实现如下:
1 package com.yunstars.recursion ; 2 3 /** 4 * Created by zhangshengjian on 2016/6/29. 5 * 递归算法 6 */ 7 public class Recursion { 8 9 /** 10 * 递归例子: 11 * (1)阶乘 12 * n != n * (n - 1) * (n - 2) * ... * 1(n>0) 13 */ 14 public static int recursive(int i) { 15 int sum = 0; 16 if(i == 0) { 17 return (1) ; 18 } else { 19 sum = i * recursive(i - 1) ; 20 } 21 return sum; 22 } 23 24 25 /** 26 * (2)1+2+3+...+100 27 */ 28 public static int recursive2(int i) { 29 int sum = 0; 30 if(i == 0) { 31 return (0) ; 32 } else { 33 sum = i + recursive2(i - 1) ; 34 } 35 return sum; 36 } 37 38 /** 39 * 测试方法 40 */ 41 public static void main(String[] arg) { 42 System.out.println( "递归例子:(1)阶乘 "); 43 System. out.println("==================================" ); 44 System. out.println("10! = " +recursive(10)) ; 45 System. out.println("==================================" ); 46 System. out.println("1+2+3+...+100 = " +recursive2(100)) ; 47 System. out.println("==================================" ); 48 } 49 50 }
欢迎各位观众老爷们打赏宝宝,宝宝会继续努力!(扫描支付宝二维码,打赏宝宝,一切皆因为有你的支持!么么哒)
不要让任何事情成为你不去学习的理由!