import java.math.BigInteger; 计算 斐波那契数列(Fibonacci sequence)。
编写 fibon.groovy 如下
// 使用 groovy的 Memoize注解实现函数的记忆化
import java.math.BigInteger;
import groovy.transform.Memoized
@Memoized
def fib(n) {
if (n < 2) return n;
return fib(n-1) + fib(n-2)
}
def n = new BigInteger("200");
println "fib(${n})= " +fib(n);
运行 groovy fibon
fib(200)= 280571172992510140037611932413038677189525
如果改为 fib(300) 就会报错:溢出
计算 斐波那契数列(Fibonacci sequence),不受长整型位数限制。
编写 fibonacci.groovy 如下
import java.math.BigInteger;
public class Fi

最低0.47元/天 解锁文章
536

被折叠的 条评论
为什么被折叠?



