递归的基本用法以及全排列
递归解释:就是使用自己的方法调用自己,直至达到出口的条件,才会终止对自己的调用
递归三要点
主要思路就是将大问题转化成小的子问题,在这个过程中,通常会有一些变化的量,这些量通常会作为参数进行变化。
1.找重复:找到一种划分方法
找到递推公式或者等价转换
以求n的阶乘为例:
要找n的阶乘就要找n-1的阶乘
2.找变化
由n变化到n-1
3.找边界
即找程序的出口,若没有出口则会一直调用自己,导致栈溢出
要找的边界就是在满足什么条件时结束该程序。
切蛋糕思维
案例:求阶乘
private static int f(int n) {
int result = 1;
if (n == 1) {
return result;
}
result = n * f(n-1);
return result;
}
输出x-->a之间的数
private static void
递归的基本用法以及全排列最先出现在Python成神之路。
共有 0 条评论