斐波那契数列,而且是最简单版本的
代码写的并不好,随便写了一下,时间复杂度为O(n),不过这个题,可以考虑一下用O(logN)的复杂度写一下,或者O(1),不过O(1)的话就有涉及一个精度问题了,有空再添加。
class Solution:
def climbStairs(self, n):
"""
:type n: int
:rtype: int
"""
if n == 1: return 1
if n == 2: return 2
a = 1
b = 2
for i in range(n-2):
c = a + b
a = b
b = c
return b