без учета памяти вызовов стека. Это снова O (n), потому что вы передаете переменную, копия которой создается в новом вызове функции, и это происходит n раз в n функциях, поскольку максимальная высота дерева рекурсии в любое время n или максимальный уровень равен n + 1, поэтому асимптотически мы можем сказать, что это O (n).
В случае подхода снизу вверх мы снова используем массив для хранения прошлого значения, чтобы он также стал пробелом O (n) (но умным способом мы можем применить подход снизу вверх для работы только с 3 переменными, которые может рассматриваться как O (1) пространство).