#每日一题#
public int fib(int n):定义了一个公有方法 fib,该方法接受一个整数 n 作为参数,并返回一个整数结果。
int a = 0, b = 1, sum;:定义了三个整数变量 a、b 和 sum,并将 a 初始化为 0,b 初始化为 1。
for(int i = 0; i < n; i++) { ... }:使用 for 循环计算斐波那契数列的第 n 项,循环次数为 n。
sum = (a + b) % 1000000007;:将 a 和 b 的和对 1000000007 取模并赋值给 sum,这是为了避免数据溢出。
a = b;:将 b 的值赋给 a。
b = sum;:将 sum 的值赋给 b。
return a;:返回斐波那契数列的第 n 项的值,即 a。
这段代码的时间复杂度为 $O(n)$,空间复杂度为 $O(1)$,其中 $n$ 为斐波那契数列的第 n 项。
public int fib(int n):定义了一个公有方法 fib,该方法接受一个整数 n 作为参数,并返回一个整数结果。
int a = 0, b = 1, sum;:定义了三个整数变量 a、b 和 sum,并将 a 初始化为 0,b 初始化为 1。
for(int i = 0; i < n; i++) { ... }:使用 for 循环计算斐波那契数列的第 n 项,循环次数为 n。
sum = (a + b) % 1000000007;:将 a 和 b 的和对 1000000007 取模并赋值给 sum,这是为了避免数据溢出。
a = b;:将 b 的值赋给 a。
b = sum;:将 sum 的值赋给 b。
return a;:返回斐波那契数列的第 n 项的值,即 a。
这段代码的时间复杂度为 $O(n)$,空间复杂度为 $O(1)$,其中 $n$ 为斐波那契数列的第 n 项。
展开
评论
点赞