版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、u1.问题描述u2.算法设计u3.代码u4. 数据输入及结果输出半数单集问题1.问题描述给定一个自然数n,由n开始可以依次产生半数集set(n)中的数如下:n set(n);(0n201)(2) 在n的左边加上一个自然数,但该自然数不能超过最近添加的数的一半;按此规则进行处理,直到不能再添加自然数为止。注意:该半数集不是多重集,集合中已经有的元素不再添加到集合中。2.算法设计算法设计:算法设计:对于给定的自然数n,计算半数集set(n)中的元素个数。 这是一个典型的递归问题,通过调用自身来解决问题。递归有两个关键:退出递归的条件递归的层次问题 在这个问题中,要算出set(n)的元素个数,需要先
2、算出 set(1) 到set(n/2),就形成了递归关系。 2.算法设计在本题中仅是计算元素的个数,例如:set(6)=6,16,26,126,36,136。6162612636136给定的最初的一个自然数6,元素个数为1 进入递归函数:在6的左边加上一个自然数,这个自然数的值0n=3,也就是说,这个自然数可选1,2,3。本次递归选1 ,由于1/2=0,所以不进入下次递归,元素个数加1 。 继续进行循环,6左边的自然数为2,得到26,由于2/2=1,所以进行递归,元素个数加1,并且下次递归中的自然数n=1,得到126,元素个数加1 ,然后退出这次递归。 继续进行循环,6左边的自然数为3,得到3
3、6,由于3/2=1,元素个数加1,进行下次递归,并且下次递归中的自然数n=1,得到136,元素个数加1。然后退出这次递归,返回到第一次递归中,第一次递归中的循环结束,程序结束。2.算法设计 因为半数集不是多重集,所以集合中已有的元素不再重复添加到集合中去,所以题目中要排除重复问题。n 由于0n201,那么00) return an; else an=1; for(int i=1;i10) & (2*(i/10)0) return an; else an=1; for(int i=1;i10) & (2*(i/10)1时, T(n)=n/2 * T(n/2)计算得,T(n)=2(logn(logn
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/Z 114.1-2026纳米制造技术规范纳米储能第1部分:空白详细规范电化学电容器用纳米多孔活性炭
- 首都经济贸易大学《房屋建筑学概论》2024-2025学年第二学期期末试卷
- 第1课 身边的系统(教案)2023-2024学年五年级下册信息技术浙教版 教学设计
- 塑料模压工操作评估水平考核试卷含答案
- 工具五金制作工标准化模拟考核试卷含答案
- 学校学生睡眠管理实施方案
- 过滤器组合钳工操作技能测试考核试卷含答案
- 硬质合金混合料鉴定下料工岗后考核试卷含答案
- 染色师岗前安全应急考核试卷含答案
- 酸性水汽提装置操作工创新方法测试考核试卷含答案
- 社区卫生服务中心成本管控模式创新
- 幼儿园小班消防安全课件
- 2025年江西省高职单招中职类文化统考(数学)
- 【冬奥】冰雪主场·央视网2026米兰冬奥会营销手册
- AIGC发展研究4.0版本
- DB32∕T 4331-2022 临床冠脉定量血流分数(QFR)检查技术规范
- 眼睑炎护理查房
- TCHES65-2022生态护坡预制混凝土装配式护岸技术规程
- 项目3-识别与检测电容器
- 二氧化碳排放计算方法与案例分析
- 美的微波炉EG823LC3-NS1说明书
评论
0/150
提交评论