循环递归调用时间

  • ++型
  • - -型

网传的一道2015阿里面试题:一台主流配置的PC上,调用f(35)所需时间,有两个版本:

++型

int f(int x)
{int s = 0;while (x++ > 0){s += f(x);}return MAX(s, 1);
}

结果应该是stack overflow,只会执行几毫秒。

具体的分析过程

- -型

int f(int x)
{int s = 0;while (x-- > 0){s += f(x);}return MAX(s, 1);
}

函数调用过程为
f(35)=f(34)+f(33)+....+f(2)+f(1)+f(0)=2∗(f(33)+f(32)+...+f(2)+f(1)+f(0))…=234f(0)\begin{aligned} f(35) &= f(34)+f(33)+....+f(2)+f(1) +f(0) \\ &= 2*(f(33)+f(32)+...+f(2)+f(1)+f(0))\\ &\dots \\ &=2^{34} f(0) \end{aligned} f(35)​=f(34)+f(33)+....+f(2)+f(1)+f(0)=2∗(f(33)+f(32)+...+f(2)+f(1)+f(0))…=234f(0)​

CPU主频为GHz量级,不妨取CPIf(0)=5CPI_{f(0)}=5CPIf(0)​=5,总时间为234∗5÷109=85.8993459s2^{34}*5 \div 10^9=85.8993459\ s234∗5÷109=85.8993459 s,所以结果是几分钟。实际跑出来的结果是88.903000。

一台主流配置的PC上调用f(35)所需时间相关推荐

  1. 台式计算机的主流配置,现在台式电脑主流配置

    当今社会电脑是必不可少的东西,在我们买电脑时,很多人并不十分清楚.也不需要十分清楚电脑的具体配置信息,只需要买一台主流配置的就可以了.下面是小编收集整理的,希望对大家有帮助~~ 工具/原料 网络 总述 ...

  2. Hello China操作系统在Virtual PC上的安装和使用

    http://blog.csdn.net/hellochina15/article/details/7253350 本文介绍如何在Windows 7操作系统和Virtual PC 2007虚拟机上安装 ...

  3. 一个路由器配置多台不同网段的PC,使PC间能够互通

    实验目的: 一个路由器配置多台不同网段的PC,使PC间能够互通 步骤: 1.配置组网路由器接连多个PC 2.给每个PC分别配置不同网段IP及对应网关 3.路由器连接各个PC的端口分别配置上对应网关 4 ...

  4. 5000配置一台游戏型计算机,开学装机:2020年如何配一台5000元主流配置的游戏主机?...

    原标题:开学装机:2020年如何配一台5000元主流配置的游戏主机? 特殊的2020年,让所有人都想不到,更让大学们直接在家度过一个学期.今秋九月,终于可以重返校园了,相信有不少学生正计划着给自己新学 ...

  5. pc端html调用麦克风_如何减少PC上的麦克风背景噪音

    pc端html调用麦克风 Micolas/Shutterstock.com Micolas / Shutterstock.com Whether you're video conferencing w ...

  6. 2020年学计算机需要什么配置,开学装机:2020年如何配一台5000元主流配置的游戏主机?...

    开学装机:2020年如何配一台5000元主流配置的游戏主机? 2020-08-31 18:37:04 3点赞 11收藏 5评论 特殊的2020年,让所有人都想不到,更让大学们直接在家度过一个学期.今秋 ...

  7. vue实现PC端调用摄像头拍照人脸录入、移动端调用手机前置摄像头人脸录入、及图片旋转矫正、压缩上传base64格式/文件格式

    PC端调用摄像头拍照上传base64格式到后台,这个没什么花里胡哨的骚操作,直接看代码 (canvas + video) <template><div><!--开启摄像头 ...

  8. 恢复在这台计算机上存储的文件,MTE解释文件恢复如何在PC上工作 | MOS86

    It您或者也许Windows拒绝启动,当您将硬盘驱动器连接到另一台PC时,您无法读取数据.你会收到你的数据吗?本文将重点介绍PC上文件恢复背后的概念. 硬盘结构 第一次,让通常,硬盘驱动器由引导扇区, ...

  9. 解决PC浏览器调用摄像头失败(本地可以,线上失败)

    解决PC浏览器调用摄像头失败(本地可以,线上失败) 原因:浏览器为了安全http协议获取不到摄像头权限 解决方案 1.切换https 如果域名可以使用https,切换为https即可 2.修改浏览器设 ...

最新文章

  1. 游客功能怎么实现 php,php链式操作的实现方式分析
  2. R筛选dataframe时间范围内的数据
  3. 算法的性能评价------空间复杂度和时间复杂度
  4. 腾讯云10亿扶持小程序:3元套餐可能免费
  5. springmvc_3(将数据放入map中)
  6. hive处理日志,自定义inputformat
  7. 使用Angular2建立项目
  8. Kubernetes 网络部分
  9. 02-大鸭梨博客系统数据库设计及Dapper的使用
  10. 【免费毕设】PHP课程网站络管理系统(源代码+论文)
  11. 前端安全系列之二:如何防止CSRF攻击?
  12. 超详细中文车牌识别开源库EasyPR入门实战(win10_VS2019_opencv34)
  13. 根据年、月、周、日设置时间节点的日期工具类
  14. 数据库约束六大约束语句
  15. 实验四 类和对象;类的继承和派生;多态性; 接口;构造器应用
  16. ESP32使用AT MQTT 固件发布主题信息返回ERROR解决
  17. struts2 项目构建规划 (6)
  18. 微信公众号测试账号网址
  19. 2021-06-04 Java对象在Hibernate下的4种状态和Session相关方法以及对象识别
  20. [转载]中国传统武术的困境与出路----著名武术家张全亮答记者问

热门文章

  1. 开放式激光振镜+运动控制器(五):ZMC408SCAN控制器硬件介绍
  2. html图片右上角加上角标
  3. C++与OMP配合的最简线程池
  4. Python学习笔记——Flask模板
  5. python和excel数据分析_利用Python处理和分析Excel表中数据实战
  6. php随机名人名言,php随机输出名人名言的代码
  7. 对勾函数_对勾函数讲解与例题解析
  8. 【渝粤教育】国家开放大学2018年秋季 0257-22T高级英语听力(1) 参考试题
  9. 实习时应该做好的那些事
  10. STC15W104 8脚单片机串口下载程序