// 逆序打印链表
function printReverseListWithLoop(list) {
let arr = [];
let temp = list;
while (temp) {
arr.push(temp.value);
temp = temp.next;
}
for (let i = arr.length - 1; i >= 0; i--) {
console.log(arr[i]);
}
}
// 逆序打印链表
function printReverseListByRecursive(list) {
while (list.next) {
printReverseListByRecursive(list.next);
}
console.log(list.value);
}
fiber
function fib(n) {
if (n <= 1) {
return n;
}
return fib(n - 1) + fib(n - 2);
}
function fib(n, a = 0, b = 1) {
if (n === 0) {
return a;
}
if (n === 1) {
return b;
}
return fib(n - 1, b, a + b);
}