流年似水网

递归问题

递归问题

//返回指定的递归问题值(递归)private int feboUseRecursion(int num){         //1、终止条件,递归问题num = 1或2时,递归问题返回值为1;        if (num == 1){             return 1;        }else if(num == 2){             return 1;        } else{             //return value(num - 1) + value(num-2);前num-1个数的递归问题和+当前的值=前num-1个数的和 +(sum())            int i = feboUseRecursion(num -1) + feboUseRecursion(num -2);            return i;        }​    }​//求和,循环public int sum(int num){     int sum = 0;    int value;    for (int i = 1; i <= num; i++) {         value = feboUseRecursion(i);        sum += value;        System.out.println(value);    }    return sum;}​//另外附: //直接打印数量无返回值,递归问题num最小从1开始,one:0,递归问题two:1,index:1    private void feboUseRecursion2(int num,int one,int two,int index){         if (num == 1){             System.out.println(1);            return;        }        //1、终止条件,递归问题num == index;        if (index <= num){             int sum = one + two ;            System.out.println(sum);            feboUseRecursion2(num,递归问题two,sum,index+1);            //return value(num - 1) + value(num-2);前num-1个数的和+当前的值=前num-1个数的和 +(sum())        }​    }

未经允许不得转载:流年似水网 » 递归问题