🐌 vs 🚀 Fibonacci: O(2ⁿ) vs O(n)

🐌 Cách CHẬM - O(2ⁿ)

Chưa tính...
function fib(n) {
    if (n <= 1) return n;
    return fib(n-1) + fib(n-2);
}

🚀 Cách NHANH - O(n)

Chưa tính...
function fibFast(n, memo = {}) {
    if (n in memo) return memo[n];
    if (n <= 1) return n;
    memo[n] = fibFast(n-1, memo) +
              fibFast(n-2, memo);
    return memo[n];
}

📊 So sánh thời gian chạy:

n O(2ⁿ) - Số phép toán O(n) - Số phép toán Chênh lệch
101,02410100x chậm hơn
201,048,5762052,000x chậm hơn
301,073,741,8243035 triệu lần chậm hơn!

🎯 Kết luận: O(2ⁿ) tăng trưởng cực kỳ nhanh và trở nên không khả thi với n lớn!