小编use*_*212的帖子

如何确定算法的内存和时间复杂度?

我不擅长确定时间和记忆的复杂性,如果有人可以帮助我,我会很感激.

我有一个算法,在这里,我不知道它的时间和记忆复杂性是什么.

Function sample(k)
   IF k < 2
       Return 0
   Return 1 + sample(k/2)
Run Code Online (Sandbox Code Playgroud)

它的时间和内存复杂性是什么?为什么?

谢谢

algorithm time-complexity space-complexity

12
推荐指数
1
解决办法
2万
查看次数

这个函数发生了什么(haskell)?

我有这个haskell功能,我不太明白.

ns :: [Integer]
ns = 0 : [n+k | (n, k) <- zip ns [1,3..]]
Run Code Online (Sandbox Code Playgroud)

我被要求"需要3 ns".

我认为ns是常量所以它只会用列表的第一个元素压缩,给出(0,1).然后当添加时给出1的答案.然后它说"需要3 ns",所以我用列表的前5个元素压缩0,给出...(0,1),(0,3),(0,5 )然后在添加时,我得到[1,3,5]的最终答案.然而,这不是正确的答案.

ns真正发生了什么?我很难理解......

haskell list-comprehension list

4
推荐指数
1
解决办法
187
查看次数