算法思路:
递归算法,就是一种直接或者间接地调用自身的算法.递归算法的具体实现过程一般通过函数或者子过程来完成,在函数或子过程的内部,编写代码直接或者间接地调用自己,即可完成递归操作.
这里列举出求阶乘和数制转换的递归操作实例.
实例1:求阶乘
public static int jiecheng(int i) {
if(i!=1){
return i*jiecheng(i-1);
}
return 1;
}
public static void main(String[] args) {
System.out.println(jiecheng(8));
}
运行结果
实例2:数制(进制)转换
Java语言描述:
class DecimalToBinary{
public long convert(long decimal){
if(decimal >= 2){
return this.convert(decimal/2)*10+decimal%2;
}else{
return decimal;
}
}
}
public class Test {
public static void main(String[] args) {
DecimalToBinary toBinary = new DecimalToBinary();
System.out.println("5d convert to binary is:\t"+toBinary.convert(5)+"b");
}
}
运行结果: