一文精通递归算法

一、什么是递归?
三、如何使用递归?
int countSteps(int n){if(n == 1) {return 1;}if(n == 2) {return 2;}return f(n-1) + f(n-2);}
四、使用递归需要注意什么?4.1 堆栈溢出
4.2 重复计算
int countSteps(int n){if(n == 1) {return 1;}if(n == 2) {return 2;}// 先从散列表中检查是否已经对f(n)求解过了if(resultMap.get(n) != null){return resultMap.get(n);}int result = f(n-1) + f(n-2);// 将当前问题f(n)结果保存到散列表resultMap.put(n,result);return result;}4.3 时空复杂度
4.4 递归环
【一文精通递归算法】以上就是朝夕生活(www.30zx.com)关于“一文精通递归算法”的详细内容,希望对大家有所帮助!

猜你喜欢