python剑指offer跳台阶_【剑指offer】跳台阶I和II(Javapython)
关于本题,前提是n个台阶会有一次n阶的跳法。分析如下:
f(1) = 1
f(2) = f(2-1) + f(2-2)
//f(2-2) 表示2阶一次跳2阶的次数。
f(3) = f(3-1) + f(3-2) +
f(3-3)
...
f(n) = f(n-1) + f(n-2) + f(n-3) +
... + f(n-(n-1)) + f(n-n)
说明:
1)这里的f(n) 代表的是n个台阶有一次1,2,...n阶的
跳法数。
2)n = 1时,只有1种跳法,f(1) = 1
3) n =
2时,会有两个跳得方式,一次1阶或者2阶,这回归到了问题(1) ,f(2) = f(2-1) +
f(2-2)
4) n = 3时,会有三种跳得方式,1阶、2阶、3阶,
那么就是第一次跳出1阶后面剩下:f(3-1);第一次跳出2阶,剩下f(3-2);第一次3阶,那么剩下f(3-3)
因此结论是f(3)
= f(3-1)+f(3-2)+f(3-3)
5) n =
n时,会有n中跳的方式,1阶、2阶...n阶,得出结论:
f(n)
= f(n-1)+f(n-2)+...+f(n-(n-1)) + f(n-n) => f(0) + f(1) + f(2) +
f(3) + ... + f(n-1)
6)
由以上已经是一种结论,但是为了简单,我们可以继续简化:
f(n-1)
= f(0) + f(1)+f(2)+f(3) + ... + f((n-1)-1) = f(0) + f(1) + f(2) +
f(3) + ... + f(n-2)
f(n)
= f(0) + f(1) + f(2) + f(3) + ... + f(n-2) + f(n-1) = f(n-1) +
f(n-1)
可以得出:
f(n)
= 2*f(n-1)
7)
得出最终结论,在n阶台阶,一次有1、2、...n阶的跳的方式时,总得跳法为:
|
1 ,(n=0
)
f(n)
= |
1 ,(n=1
)
|
2*f(n-1),(n>=2)
python剑指offer跳台阶_【剑指offer】跳台阶I和II(Javapython)相关推荐
- 应届生offer长什么样_你的offer长什么样? 拿到offer就是被录取了吗?
原标题:你的offer长什么样? 拿到offer就是被录取了吗? 我们普遍认为的是:只要大学发了录取offer ,那么就一定是能够入学的.然而,事情没有那么简单.通常情况下,offer是录取的意思,但 ...
- python剑指offer面试题_剑指offer面试题Q10 斐波那契数列 python解法
Q10.斐波那契数列 题目描述 写一个函数,输入n,求斐波那契数列的第n项. 解题思路 思路一 递归 递归很简单但是并不能AC python实现代码 class Solution: def Fibon ...
- python剑指offer面试题_剑指Offer(Python语言)面试题38
面试题38:字符串的排列 题目:输入一个字符串,打印出该字符串中字符的所有排列.例如,输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca和cba. # - ...
- 剑指offer最新版_剑指Offer——Java版本(持续更新)
0 前言 邻近校招,算法要命!!! 本文为研究剑指Offer过程中的笔记,整理出主要思路以及Java版本题解,以便记忆和复习. 参考整理来自<剑指Offer 第二版>. 特别注意,对每道题 ...
- 剑指offer最新版_剑指offer第二版速查表
5.替换空格:python直接替换 6.从尾到头打印链表: 借助栈或直接利用系统调用栈 // 创建链表(设置next节点时就会创建下一个节点), 打印链表(最后打印nil) xxx8.二叉树的下一个节 ...
- java青蛙青蛙跳井_速解青蛙跳井问题
[导读] 中公事业单位为帮助各位考生顺利通过事业单位招聘考试!今天为大家带来数量关系题库:速解青蛙跳井问题. 在国考.省考和事业单位笔试考试中,工程问题一直都是考的非常多的一类题型,在工程问题中又包含 ...
- alert点击确定后跳转_公众号/h5 跳转到小程序填坑指南
公众号/h5 跳转到小程序填坑指南 本文介绍的是使用微信开放标签 wx-open-launch-weapp 实现微信浏览器内网页跳转到任意合法合规的小程序里,官方要求微信版本为:7.0.12 及以上, ...
- 二叉树 跳表_面试题之跳表
本文主要讲解跳表的原理.代码实现以及与之相关的常见面试题. 跳表本质上是一种查找结构,相比于平衡树,不仅实现简单,而且插入.删除.查找的时间复杂度均为O(logN).跳表其实就是链表,只是对有序的链表 ...
- 计算机图形学跳一跳_微信小游戏“跳一跳”对内部审计师的启示
好几年前,微信上出了一款小游戏叫"跳一跳",想必当时很多人都玩过几把,有些人一定玩得还不错.这款游戏很简单:一个人从一个小方块跳到另一个小方块,跳的越多,得分越多,如果从小方格跳出 ...
- nginx做小程序外链跳转_微信小程序跳转到其他网页(外部链接)的实现方法
个人类型和海外类型的小程序不支持 web-view 标签 也就是说个人申请的小程序,就别想跳转了!!!! 1.开发的时候,我们难免碰到要跳转到其他网页中去那该怎么实现呢? 2.例如我想点击一个按钮, ...
最新文章
- Windows 安装adb
- 原来 CPU 为程序性能优化做了这么多
- MongoDB 基本操作增删改查
- 浅谈Http模块,Express和Koa实现http服务
- docker ubuntu 离线安装包
- Redis的缓存穿透问题和雪崩问题?
- angular i18n 国际化 多语言
- Linux下删除非空文件目录
- 自己用as3实现的以多边形等几何模型为基础的碰撞系统 - 例子A
- iphone微信 h5页音乐自动播放
- MYSQL的Commit与程序的原子性
- 100行python代码能做什么,100行python代码实现跳一跳辅助程序
- Apache自带的ab压力测试工具用法详解
- CrossAPP第一课
- 环境猫室内监测仪——您的空气智能管家
- 第十九章 存储和使用流数据(BLOBs和CLOBs)
- 广州特耐苏-广州风淋通道构造及特点
- vue的过渡动画(有vue的动画库和ui库的介绍)
- JAVA黑白棋之算法浅析
- 【SpringCloud】SpringCloud简介
热门文章
- 1.7 Java try catch finally语句
- 计算两个日期相差的天数
- 轻松搞懂sscanf和sprintf
- 3.2.3 页面置换算法
- Exception in thread “main“ java.lang.NoClassDefFoundError: org/apache/ibatis/io/Resources
- android 数据库表格数据库数据库中,Android SQLite数据库中的表详解
- pandas教程:pandas主要功能详解
- “面试不败计划”:集合、日期、异常、序列化、其他知识点
- 海量java等互联网相关电子图书分享
- UI组件之 ProgressBar及其子类(一)ProgressBar进度条的使用