JS面试题---关于算法台阶的问题


Posted in Javascript onJuly 26, 2016

有100格台阶,可以跨1步可以跨2步,那么一个有多少种走法;

今天电话面试。遇到一道算法问题,然后瞬间一脸懵逼;

然后机智的我,自作聪明的想到如果一个人每次都走1步,那么最多100步,每次走2步最少50步;然后明显跑题了。。。还好对方及时把我打断了。。。不然我估计要对着这玩意一直死脑经。。。一路走到黑。。

然后回到家了。拿着偶的mac,然后静静的思考,终于写出来了

var Stairs = new step();
function step(){
  this.n1=1;
  this.n2=2;
  this.total=100;
  this.getFunction = getFunction;
}
function getFunction(){
    for(i=2;i<this.total;i++){
      res = this.n1 + this.n2;
      this.n1 = this.n2;
      this.n2 = res;
    }
  return res;
}
var totalStairs = Stairs.getFunction();
alert(totalStairs)

只有1格的时候。只能走1步。。。。就1种

只有2格的时候,可以1+1||2.。。。2

3格的时候,1+1+1||2+1||1+2.。。3

4格的时候1+1+1+1||2+2||2+1+1||1+1+2||1+2+1。。。5

sn = s(n-1)+s(n-2)

斐波那契算法...然后就可以用

for(i=2;i<this.total;i++){
   res = this.n1 + this.n2;
   this.n1 = this.n2;
   this.n2 = res;
}

可能本人对算法不是特别在行~如果有异议欢迎指正

以上就是小编为大家带来的JS面试题---关于算法台阶的问题全部内容了,希望大家多多支持三水点靠木~

Javascript 相关文章推荐
关于js类的定义
Jun 28 Javascript
判断一个变量是数组Array类型的方法
Sep 16 Javascript
js实现多图左右切换功能
Aug 04 Javascript
基于Angular.js实现的触摸滑动动画实例代码
Feb 19 Javascript
使用canvas及js简单生成验证码方法
Apr 02 Javascript
JavaScript数据结构之二叉查找树的定义与表示方法
Apr 12 Javascript
js调用刷新界面的几种方式
May 03 Javascript
Node.js console控制台简单用法分析
Jan 04 Javascript
三步实现ionic3点击退出app程序
Sep 17 Javascript
vue中实现动态生成二维码的方法
Feb 21 Javascript
vue+Element中table表格实现可编辑(select下拉框)
May 21 Javascript
原生js canvas实现鼠标跟随效果
Aug 02 Javascript
对Js OOP编程 创建对象的一些全面理解
Jul 26 #Javascript
jQuery仿京东商城楼梯式导航定位菜单
Jul 25 #Javascript
又一枚精彩的弹幕效果jQuery实现
Jul 25 #Javascript
EasyUI加载完Html内容样式渲染完成后显示
Jul 25 #Javascript
前端微信支付js代码
Jul 25 #Javascript
javascript与jquery动态创建html元素示例
Jul 25 #Javascript
jquery siblings获取同辈元素用法实例分析
Jul 25 #Javascript
You might like
PHP集成FCK的函数代码
2008/09/27 PHP
PHP文件锁定写入实例解析
2014/07/14 PHP
php格式化金额函数分享
2015/02/02 PHP
PHP框架Laravel学习心得体会
2015/10/28 PHP
PHP微信开发之微信消息自动回复下所遇到的坑
2016/05/09 PHP
php gethostbyname获取域名ip地址函数详解
2010/01/24 Javascript
javascript 用函数语句和表达式定义函数的区别详解
2014/01/06 Javascript
SeaJS入门教程系列之完整示例(三)
2014/03/03 Javascript
使用Chrome浏览器调试AngularJS应用的方法
2015/06/18 Javascript
jQGrid Table操作列中点击【操作】按钮弹出按钮层的实现代码
2016/12/05 Javascript
AngularJS模糊查询功能实现代码(过滤内容下拉菜单排序过滤敏感字符验证判断后添加表格信息)
2017/10/24 Javascript
javaScript产生随机数的用法小结
2018/04/21 Javascript
vue-cli 打包后提交到线上出现 &quot;Uncaught SyntaxError:Unexpected token&quot; 报错
2018/11/06 Javascript
浅谈vue-router路由切换 组件重用挖下的坑
2019/11/01 Javascript
小程序新版订阅消息模板消息
2019/12/31 Javascript
Vue项目打包编译优化方案
2020/09/16 Javascript
Python编写屏幕截图程序方法
2015/02/18 Python
Python简单实现TCP包发送十六进制数据的方法
2016/04/16 Python
Flask框架Jinjia模板常用语法总结
2018/07/19 Python
Python面向对象程序设计示例小结
2019/01/30 Python
python学习--使用QQ邮箱发送邮件代码实例
2019/04/16 Python
pybind11和numpy进行交互的方法
2019/07/04 Python
浅谈python3 构造函数和析构函数
2020/03/12 Python
python使用pyecharts库画地图数据可视化的实现
2020/03/25 Python
keras训练浅层卷积网络并保存和加载模型实例
2020/07/02 Python
拿来就用!Python批量合并PDF的示例代码
2020/08/10 Python
M1芯片安装python3.9.1的实现
2021/02/02 Python
Kent & Curwen:与大卫·贝克汉姆合作
2017/06/13 全球购物
暑期教师培训方案
2014/06/07 职场文书
2014公安机关纪律作风整顿思想汇报
2014/09/13 职场文书
羊脂球读书笔记
2015/06/30 职场文书
2016反腐倡廉警示教育心得体会
2016/01/13 职场文书
送给自己的励志语句:要安静的优秀,悄无声息的坚强
2019/11/26 职场文书
JS实现扫雷项目总结
2021/05/19 Javascript
Python实现生成bmp图像的方法
2021/06/13 Python
docker 制作mysql镜像并自动安装
2022/05/20 Servers