面试了一个远程公司,第一题是写一个斐波那契数列的实现,这个没有任何难度,反正是不写递归就行
但是第二题是用自己写的第一题的答案运行 n = 9292
因为每注注意 n = 9292
所以第一题实现的时候比较粗暴,第二题运行结果当然是无穷大
后来进行调整,其实很简单,力扣有题目
var fib = function(n) {
const MOD = 1000000007;
if (n < 2) {
return n;
}
let p = 0, q = 0, r = 1;
for (let i = 2; i <= n; ++i) {
p = q;
q = r;
r = (p + q) % MOD;
}
return r;
};
持续 % 1000000007 的结果就出来了 随后又实现一下不 % 1000000007 的结果 结果太庞大了,肯定不是,否则太侮辱出题人了
BUT ,对方公司就是要这个庞大的结果 我现在道心崩了