Approach 1: Multiple List Reversals
Complexity
Time: O(n)
Space: O(1)
Approach 1: Recursion + Carry
Complexity
Time: O(n)
Space: O(n)
Approach 2: Recursion + Number Doubling (Suboptimal)
Complexity
Time: O(n)
Space: O(n)
Notes
This won’t scale for languages that don’t support arbitrarily large integers. The doubling would overflow.
Other Languages