菜鸟每天练习 之 递归算法(打靶)
来源:互联网 发布:茶叶网络营销策划 编辑:程序博客网 时间:2024/05/18 12:38
例题1:一个射击运动员打靶,靶一共有10环,连开10枪打中90环的可能性有多少种?请用递归算法编程实现。[中国某著名通信企业H面试题]
解析:靶上一共有10种可能——1环到10环,还有可能脱靶,那就是0环,加在一起共11种可能。这是一道考循环和递归的面试题。我们在这个程序中将利用递归的办法实现打靶所有可能的演示,并计算出结果。(可以连续用10个循环语句来表示程序)
for (i1=0;i1<=10;i1++) { for (i2=0;i2<=10;i2++) { for (i3=0;i3<=10;i3++) { ...... for (i10=0;i10<=10;i10++) { if(i1+i2+i3+...+i10=90) Print(); } ...... }}} 注意2个条件: (1)如果出现这种情况,即便后面每枪都打10环也无法打够总环数90,在这种情况下就不用再打了,则退出递归。 (2)如果满足条件且打到最后一次(因为必须打10次) 代码:
- 菜鸟每天练习 之 递归算法(打靶)
- 菜鸟每天练习 之 递归算法
- 算法设计与分析题目练习一:运动员打靶(递归算法)
- 打靶问题(递归)
- 打靶(递归)问题
- 菜鸟每天练习 之 折半查找
- 菜鸟每天练习 之 冒泡排序
- 菜鸟每天练习 之 二级联动
- 菜鸟每天练习 之 图片上传
- 算法之递归练习
- 打靶尝试递归算法三解。
- 递归 打靶
- 菜鸟每天练习 之 99乘法 switch 判断字符
- 打靶算法
- 递归实现打靶问题
- 黑马程序员之Java--递归算法练习
- 菜鸟学习数据结构算法之路之斐波那契数列(递归)
- 打靶递归--10枪90环(YC)
- HyperLink中的NavigateUrl绑定写法
- Process Chain、Info Package、DTP批量收集及批量删除方法总结
- kscope cscope rebuild database 索引不能使用
- 防止守护进程挂掉策略
- ARM 与 MIPS 比较
- 菜鸟每天练习 之 递归算法(打靶)
- zdfnihao
- GDB调试常用命令总结
- mysql实现每组取前N条记录的sql,以及后续的组数据量限制
- bcb2010打印调试信息用TRACE
- 为啥下个东西这么难
- 栈
- Adapter的继承关系
- 分析Launcher---/res/xml/default_workspace.xml&&default_wallpaper.xml