- 0
- 0
- 约6.31千字
- 约 6页
- 2026-05-11 发布于北京
- 举报
今天主要来聊两个问题:给一个数组,如何同时求出最大值和
最小值,如何同时求出最大值和第二大值?
这两个问题看起来都特别简单,一个for循环,几个大小判断
if语句不就行了嘛?其实不然,其中的细节操作十分精妙,渐
进时间复杂度肯定是O(n)无法再减少,但如果深究算法的执
行速度,仍然有优化空间。
相信你看完本文,会对分治思想和归纳思想有更深刻的认
识,会对这种看似简单的问题另眼相看。
我们先按正常的思路,写出来两个问题的代码:
//返回最大值和最小值
int[]max_and_min(int[]nums){
intn=nums.length;
intmax=nums[0];
intmin=nums[0];
for(inti=0;in;i++){
if(nums[i]max)
max=nums[i];
if(nums[i]min)
min=nums[i];
}
returnnewint[]{max,min};
}
//返回最大值和第二大值
int
您可能关注的文档
最近下载
- TCIA-B001-2019 碳纤维复合材料加固修复化工管道技术规范.pdf VIP
- GB50809-2012 硅集成电路芯片工厂设计规范.pdf VIP
- 射频识别(RFID)技术与应用-全套PPT课件.pptx
- 2025--2026学年下册三年级科学冀人版 期末测试卷(有答案).docx VIP
- 2026年大学生西部计划志愿者招募笔试试题库及答案.docx VIP
- 5S管理与目视化管理.ppt VIP
- 2026国药集团校园招聘(公共基础知识)综合能力测试题附答案.docx VIP
- 2024年辅警招聘《公安工作基本知识》培训考试题库 (附答案).docx VIP
- 第8课《在实践中提高认识能力》课堂同步练习 (含答案)2024 - 2025学年高教版(2023)中职哲学与人生.pdf VIP
- 揭阳市揭西县招聘卫生健康事业单位工作人员考试试题及答案.docx VIP
原创力文档

文档评论(0)