Lua协程实现Fibonacci算法


image

费波拉且数的算法如图所示:

image

所以a和b分别保存了前两次的结果,每次for循环调用generator都从yield这一行代码恢复然后进行a, b = b, a+b操作。然后判断a是否小于等于n决定返回结果。

如果不用coroutine.wrap,我们可以这样写,效果是一样的,代码稍显啰嗦:

image


《“Lua协程实现Fibonacci算法”》 有 1 条评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注