由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 请教个问题
相关主题
一个stack怎么sort遍历二叉树除了recursion还有啥好办法?
被google拒了~-。-Quick sort为什么需要logN的memory?
fibonacci recursion空间复杂度是多少 (转载)算法空间复杂度的小白问题
用了递归以后,怎么计算空间复杂度?反省了一下面试题目都答对但是还是没offer的原因。。。
发包子请教大牛:scramble string这题递归的复杂度G 家电面的时候大家都是用什么语言?
面试时 迭代还是递归java怎样解决pass by reference问题?
问一个题求教一个combination的问题,求好方法
O(1)space解法到底能不能用递归?请问一下啥是static/dynamic heap?
相关话题的讨论汇总
话题: start话题: sum话题: end话题: int话题: 递归
进入JobHunting版参与讨论
1 (共1页)
y*****3
发帖数: 451
1
如果题目中要求只能用constant memory,或者要求空间复杂度是O(1),是不是就不能
用recursion了?
y*****3
发帖数: 451
2
没有人知道吗?。。。跪求!
b*****o
发帖数: 715
3
和语言实现有关,像Lisp这样的FP语言,尾递归可以是constant memory。

【在 y*****3 的大作中提到】
: 如果题目中要求只能用constant memory,或者要求空间复杂度是O(1),是不是就不能
: 用recursion了?

y*****3
发帖数: 451
4
谢谢!那如果我用java写,要求Constant memory的话肯定不可以用递归了?

【在 b*****o 的大作中提到】
: 和语言实现有关,像Lisp这样的FP语言,尾递归可以是constant memory。
j*********6
发帖数: 407
5
尾递归实现和语言没关系吧?(理解不对的话求大牛指正) 不过一般情况下递归都不
是尾递归
所以就用循环之类的写吧~
A******g
发帖数: 612
6
有关系,尾递归是指每个function call的最后一步是call这个function自己,所以前
面stack的内容和后面计算没关系,就可以不存前面stack里的内容了,LISP的解析器或
编译器会做这样的优化
(define (sum start end)
(if (= start end) start
(+ start (sum (+ start 1) end))))
同样的写法,Java或C++一般还是会存整个stack,然后一层层返回
int sum(int start, int end) {
if (start==end)
return start;
else
return start+sum(start+1, end);
}
Java/C++ 如果用loop的话,就不用stack了
int sum(int start, int end) {
int sum = 0;
for (int i=start; i<=end; i++)
sum+=i;
return sum
}

【在 j*********6 的大作中提到】
: 尾递归实现和语言没关系吧?(理解不对的话求大牛指正) 不过一般情况下递归都不
: 是尾递归
: 所以就用循环之类的写吧~

b*****o
发帖数: 715
7
恩,Java的递归是基于stack的,所以不可能是constant memory。

【在 y*****3 的大作中提到】
: 谢谢!那如果我用java写,要求Constant memory的话肯定不可以用递归了?
g*********e
发帖数: 14401
8
跟compiler有关

【在 j*********6 的大作中提到】
: 尾递归实现和语言没关系吧?(理解不对的话求大牛指正) 不过一般情况下递归都不
: 是尾递归
: 所以就用循环之类的写吧~

1 (共1页)
进入JobHunting版参与讨论
相关主题
请问一下啥是static/dynamic heap?发包子请教大牛:scramble string这题递归的复杂度
请教recursive backtracking问题的时间复杂度的分析面试时 迭代还是递归
也问两个算法题问一个题
还有两个题。O(1)space解法到底能不能用递归?
一个stack怎么sort遍历二叉树除了recursion还有啥好办法?
被google拒了~-。-Quick sort为什么需要logN的memory?
fibonacci recursion空间复杂度是多少 (转载)算法空间复杂度的小白问题
用了递归以后,怎么计算空间复杂度?反省了一下面试题目都答对但是还是没offer的原因。。。
相关话题的讨论汇总
话题: start话题: sum话题: end话题: int话题: 递归