- 68
- 0
- 约2.07千字
- 约 9页
- 2016-08-21 发布于河南
- 举报
子集选取(动态规划)小明买书 C语言算法
子集选取问题 有一类算法,从集合A中选取任意子集a(子集内元素数限或不限),对a进行筛选操作,若a满足某条件则被认为是需要的集合,输出。 此类问题的关键是如何有效、快速、不遗漏的选取子集a。 下面来看道例题。 小明假期同爸爸一起去书店,他选中了六本书,每本书的单价分别为:3.1,1.7,2,5.3,0.9和7.2。 不巧的是,小明的爸爸只带了十几块钱,为了让小明过一个愉快的假期, 爸爸扔然同意买书,但提邮购一个要求,要小明从六本书中选出若干本, 使得单价相加所得的和同10最接近。 请找出同10最接近的书组合并输出。 我们很容易想到大概思路:把6本书的单价存入一个数组book[6]中,然后在数组中进行操作: 1.有规律的不重复的不遗漏的选取若干个数组元素,求和s并与10比较得出差d,保存这些数组元素,用“打擂法”来找出最小的d及其相应的数组元素。 2.输出d和相应数组元素。 问题是:如何将我们的思路具体实践呢? 操作1: ①求出最小d; ②对应书价(放在数组result[]中)。考虑到可能有i种组合使d最小(d必相等),所以还有保存组合数i,并把相应元素也放在result[]中。 操作2:用result[]、i来分组输出每组的单价,并输出d. 数据的表示与转化: 关键仍然是有效、快速、不遗漏的选取子集。选取的书数目1~6均可。 1.同一本书或取或不取两种,故采用2进制表示法,
您可能关注的文档
- 液压词汇1.doc
- 液体浆状物的密封5.pptx
- 环境科学专外-Unit 6.ppt
- 珡珡孱PP.ppt
- 特殊功能寄存器.ppt
- 电力英语7.doc
- 电感inductance.doc
- 流体力学Ⅱ.ppt
- 第01章 导言.ppt
- 第01章--导言__微观经济学(尹伯成)课件.ppt
- DB21_T 4294-2025 地理标志产品 凌塔白酒.docx
- DB11T 1035-2013 城市轨道交通能源消耗评价方法.docx
- T_CEEMA 002-2020 风力发电机组功率曲线验证技术规范.docx
- DB41_T 1960.4-2021 公共机构能耗定额 第4部分:场馆类机构.docx
- DB21_T 4243-2025 地理标志产品 清原马鹿茸.docx
- DB64_T 405-2017 火灾自动报警系统质量检验评定规程.docx
- 甲烷报警矿灯.docx
- DB11_T 647-2021 城市轨道交通运营服务管理规范.docx
- DB37_T 3433.1-2018 农业大数据 基础数据元 第1部分:公共.docx
- 2025年医院规培基地建设与青年医师成长帮扶专项总结(3篇).docx
最近下载
- 2025年贵州省公务员录用考试_行测_题_网友回忆版_.doc VIP
- 扬尘治理监理实施细则标准范本.docx VIP
- NBSHT 0913-2015 轻质白油.pdf VIP
- 15K519 暖通空调设计常用数据.docx VIP
- 2025年广西区考公务员录用考试_行测_题_网友回忆版_.doc VIP
- 反洗钱2025测试题及答案.docx VIP
- 幼儿园急救知识:流鼻血应对方法.pptx VIP
- 金蝶云星空企业版 V9.0_产品培训_制造_质量管理.pptx VIP
- 广场舞视频免费下载_广场舞视频大全_就爱广场舞.docx VIP
- 2025年广东省公务员录用考试_行测_题_网友回忆版_.doc VIP
原创力文档

文档评论(0)