- 4
- 0
- 约9.12千字
- 约 8页
- 2017-02-28 发布于湖北
- 举报
从10亿个浮点数中找出最大的1万个 这是一道似易实难的题目,一般同学最容易中的陷阱就是没有重视这个“亿”字。因为有10亿个单精度浮点数元素的数组在32位平台上已经达到3.7GB之巨,在常见计算机平台(如Win32)上声明一个这样的数组将导致堆栈溢出。正确的解决方法是分治法,比如每次处理100万个数,然后再综合起来。不过这不是本文要讨论的主旨,所以本文把上题的10亿改为1亿,把浮点数改为整数,这样可以直接地完成这个问题,有利于清晰地讨论相关算法的优化(注2)。 不假思索 ???????拿到这道题,马上就会想到的方法是建立一个数组把1亿个数装起来,然后用for循环遍历这个数组,找出最大的1万个数来。原因很简单,因为如果要找出最大的那个数,就是这样解决的;而找最大的1万个数,只是重复1万遍而已。 templateclass T
void solution_1(T BigArr[], T ResArr[]) {
for (int i = 0; i RES_ARR_SIZE; ++i) {
int idx = i;
for (int j = i + 1; j BIG_ARR_SIZE; ++j) {
if (BigArr[j] BigArr[idx])
idx = j;
}
ResArr[i] = BigArr[idx];
您可能关注的文档
- 充电宝产品设计.ppt
- 充电桩技术要求.doc
- 传递动力 重卡后驱动桥型号及参数汇总.doc
- 传动轴的检查与更换.ppt
- 传输软件超级终端设置步骤.ppt
- 传说更新文件说明.doc
- 传真机服务器文档.ppt
- 传真机故障排除.doc
- 传真机使用及维护.ppt
- 传真基本原理.ppt
- 2025-2026学年山东省泰安市肥城市青岛版(五年制)四年级上学期学情自测数学试题(含答案).pdf
- 2025-2026学年人教版数学四年级下学期期中模拟卷(一)(含答案).pdf
- 2025-2026学年山东省泰安市宁阳县蒋集镇青岛版(五年制)二年级上测期中阶段性数学试题(含答案).pdf
- 2025-2026学年福建省福州市仓山区人教版二年级上学期期中阶段性数学试题(含答案).pdf
- 2025-2026学年山东省枣庄市滕州市青岛版二年级上学期期中学业成果展评数学试题(含答案).pdf
- 2025-2026学年湖北省襄阳市某校市人教版四年级上学期核心素养综合作业数学试题(含答案).pdf
- 2025-2026学年广东省惠州市博罗县罗阳镇北师大版二年级上学期期中测试数学试题(含答案).pdf
- 2025-2026学年河南省郑州市中牟县人教版二年级上学期期中学情监测数学试题(含答案).pdf
- 2025-2026学年浙江省杭州市余杭区人教版三年级上学期素养测评练习数学试题(含答案).pdf
- 《GB_T 29315-2022中小学、幼儿园安全防范要求》专题研究报告.docx
最近下载
- 英剧剧本唐顿庄园台词本中英文对照精排版第一季第一集.pdf VIP
- T_CECS 10128-2021 不锈钢二次供水水箱.docx VIP
- 第九章抽样与抽样估计.ppt VIP
- 2025年生态环境局遴选公务员面试预测题及答案.doc VIP
- 教师党员党课讲稿模板.pptx VIP
- 房地产土地评估各种方法综合测算表.xls VIP
- 清水营煤矿大倾角厚煤层大采高开采技术的研究.pdf VIP
- 2025年生态环境局遴选公务员面试专项练习含答案.doc VIP
- 2019年8月消化内科实习生小周考.docx VIP
- 9.1+认识质量互变规律(趣味课件)-【趣味课堂】2025-2026学年高中政治选择性必修三《逻辑与思维》.pptx VIP
原创力文档

文档评论(0)