笔试面试之n台阶问题
2010-06-21 22:23
316 查看
一个台阶总共有n级,如果一次可以跳1级,也可以跳2级。求总共有多少总跳法,并分析算法的时间复杂度。
首先我们考虑最简单的情况。如果只有1级台阶,那显然只有一种跳法。如果有2级台阶,那就有两种跳的方法了:一种是分两次跳,每次跳1级;另外一种就是一次跳2级。
此问题分开来看,可以看为第一次跳,与后面的跳,第一次跳有两种跳法,一次跳一级,和一次跳两级。那么,当第一次跳一级时,这种跳法
总的跳法为f(n-1),当第一次跳2级时,总跳法为f(n-2).因此,f(n)=f(n-1)+f(n-2)。有分治的思想。
我们把上面的分析用一个公式总结如下:
/ 1 n=1
f(n)= 2 n=2
/
f(n-1)+(f-2) n>2
递归可以解,用栈也可以,用矩阵也可以。
转自:http://zhedahht.blog.163.com/blog/static/25411174200731844235261/
首先我们考虑最简单的情况。如果只有1级台阶,那显然只有一种跳法。如果有2级台阶,那就有两种跳的方法了:一种是分两次跳,每次跳1级;另外一种就是一次跳2级。
此问题分开来看,可以看为第一次跳,与后面的跳,第一次跳有两种跳法,一次跳一级,和一次跳两级。那么,当第一次跳一级时,这种跳法
总的跳法为f(n-1),当第一次跳2级时,总跳法为f(n-2).因此,f(n)=f(n-1)+f(n-2)。有分治的思想。
我们把上面的分析用一个公式总结如下:
/ 1 n=1
f(n)= 2 n=2
/
f(n-1)+(f-2) n>2
递归可以解,用栈也可以,用矩阵也可以。
转自:http://zhedahht.blog.163.com/blog/static/25411174200731844235261/
相关文章推荐
- JAVA基础笔试、面试常见问题集合
- 数据量的问题是很多面试笔试中经常出现的问题
- java基础:常见的概念问题,面试笔试可能会遇到哟
- 面试算法学习-7-跳台阶问题
- 面试笔试问题总结(八)— 字符串
- IBM中国研究院、SAP、网易游戏、IBM2015应届生招聘笔试面试问题分享
- 【名企面试】百度2015校招笔试题(头巾问题)
- Android 笔试/面试,常见问题整理
- 面试笔试题约瑟夫问题详解
- 大数据笔试面试问题之分治法解决
- net基础笔试、面试常见问题集合
- 从头说catalan数及笔试面试里那些相关的问题 (转)
- Company A面试 笔试 : 爬山 算步骤 问题 另外一种解法
- IBM中国研究院、SAP、网易游戏、IBM2015应届生招聘笔试面试问题分享
- C++笔试面试遇到的问题
- 笔试面试之矩阵解决fabnaji数列问题
- JAVA基础笔试、面试常见问题集合
- Java面试 笔试题之i++问题
- 面试笔试整理7:SQL问题整理
- 【面试笔试算法】Problem 1 : DP滑雪问题--网易互联网算法实习生2017笔试题