package main
/**
*
* @param number int整型
* @return int整型
*/
func jumpFloor( number int ) int {
// write code here
//递归方式
if number == 0 || number == 1 {
return 1
}
return jumpFloor(number - 1) + jumpFloor(number - 2)
//动态规划记录表
// dp := make([]int,number + 1)
// dp[0],dp[1] = 1,1
// for i:=2;i<number+1;i++ {
// dp[i] = dp[i-1] + dp[i-2]
// }
// return dp[number]
//动态规划基础上压缩空间 记忆化搜索法
prev,cur := 1,1
for i := 2 ; i < number + 1;i++ {
temp := cur
cur = prev + cur
prev = temp
}
return cur
}