首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
牛客595757375号
常州大学怀德学院 Java
发布于江西
关注
已关注
取消关注
@程序员Hasity:
【百度】提前批Java研发一面面经
一顿狂轰乱炸zkxzhuzhu要实现这个功能,可以首先遍历数组一次来找到最大值和最小值以及它们的索引,然后再进行两次交换.public class ArrayMinMaxSwap { public static void main(String[] args) { int[] nums = {5, 3, 8, 4, 2}; swapMinMax(nums); for (int num : nums) { System.out.print(num + " "); } } public static void swapMinMax(int[] nums) { if (nums == null || nums.length < 2) { return; } int minIndex = 0; int maxIndex = 0; int min = nums[0]; int max = nums[0]; // 找出最小值和最大值的索引 for (int i = 1; i < nums.length; i++) { if (nums[i] < min) { min = nums[i]; minIndex = i; } if (nums[i] > max) { max = nums[i]; maxIndex = i; } } // 如果最大值或最小值已经在正确的位置,则不需要交换 if (minIndex != 0) { // 将最小值交换到数组的第一个位置 int temp = nums[0]; nums[0] = min; nums[minIndex] = temp; } if (maxIndex == nums.length - 1 || (maxIndex != 0 && maxIndex != minIndex)) { // 如果最大值已经在最后一个位置,或者最大值和最小值不是同一个元素,则交换 int temp = nums[nums.length - 1]; nums[nums.length - 1] = max; nums[maxIndex] = temp; } // 注意:如果最大值和最小值相同且都在第一个位置,则上面的代码会进行不必要的交换然后恢复原位 // 但由于总是从索引1开始寻找最大值和最小值,这种情况下的交换是无害的 }}注意:这个方法首先遍历数组找到最大值和最小值的索引以及它们的值。然后,它检查这两个值是否已经在它们的目标位置(即最小值在数组的第一个位置,最大值在数组的最后一个位置)。如果不在,就进行相应的交换。这里有一个小的优化点:如果最大值已经在最后一个位置,且它不与最小值相同(即它们不是同一个索引),那么可以避免对最大值的第二次交换。但是,为了代码的清晰性和易读性,这里还是保持了两次可能的交换。需要注意的是,如果数组只有一个元素或为空,这个方法将直接返回,因为在这种情况下没有最小值或最大值的概念,或者没有位置可以交换。
点赞 26
评论 2
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
07-14 13:46
山东大学 嵌入式软件工程师
面试的反问环节可以问什么?
面试的时候除了前面的自我介绍、八股、项目、手撕等等内容需要提前准备之外,在面试的最后环节,如何反问也是很重要的一点,毕竟马上面试官就要给你打分了,临门一脚你要是拉了坨大的……那就很得不偿失。我就想当时我刚开始有面试的时候,也会比较纠结该问啥,既怕自己问的太多了,有点越界,又怕自己问的太过简单和机械化,让面试官不耐烦以至于丢掉了最后的机会。正好上个月的文章《话面试官会非常反感的5句》的最后,我给自己埋了个坑,今天就寻思寻思填补上。当面试走到最后流程,面试官会问:你还有什么想要提问的吗?大部分情况下都是在例行公事(除非跟你聊的特别开心),同时也是在给面试者进一步交流的机会,从中能够看出面试者的思维...
SAGIMA经验浅谈
点赞
评论
收藏
分享
07-17 14:24
快手_机器学习算法部_机器学习算法工程师(准入职员工)
快手内推
在快手做了三个多月的后端开发实习,在这里浅浅分享下我的实习体验~ 工作节奏: 基本上是早10晚9,周末双休。整体来说工作强度还是不小的,不过应该也是互联网常态了吧QAQ 福利待遇: 技术岗是400/天,晚上8点以后下班会发30餐补,入职也会一次性发180能量券,学校不在当地的话还可以申请1500/月的房补。¥这块老铁厂还是挺大方的哈哈。 实习生培养: 团队氛围很nice,我的mentor人真的很好,有问题向他请教都会很细致很耐心地给我解答,好感度upup~不过同事们平时可能都比较忙,捕捉到他们不容易,所以每次沟通或者汇报前最好提前做好准备。具体工作职责的话,一开始基本是接同事们剩下的活,直接上...
快手公司福利 888人发布
点赞
评论
收藏
分享
07-06 17:22
小米_工业设计师(准入职员工)
25 校招结束,7 offer 收尾
都说本科毕业找工作难,我感觉还是找的不够多,四五月份几乎天天找,最后在 7 个 offer 里选择去小米辣
嘀哩咕噜说啥呢:
小米辣吗
,那举办了
投递小米集团等公司7个岗位
点赞
评论
收藏
分享
05-30 00:21
哈尔滨工程大学 Java
27java 日常实习简历求拷打
投了十天0面试,是简历有问题吗
与君咫尺之遥:
换个项目9月好找
点赞
评论
收藏
分享
07-17 10:33
门头沟学院 客户端其它
王侯将相宁有种乎!
我的评价是:少在这贩卖焦虑!大厂招人看综合能力,学历是重要敲门砖但不是唯一!阿里腾讯等大厂的公开数据都显示有相当比例双非/普本学生通过实力(技术、项目、竞赛)成功入职。211/985名校 学历对于简历筛选是有优势,但非名校生凭硬实力+机遇同样能突围。一棍子打死所有非211,不是蠢就是坏!
侠客行:
我朋友双非拿字节 SP,靠竞赛项目硬刚😅
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
滴滴提前批一面秒挂面经
7629
2
...
滴滴提前批一面
6447
3
...
我和妈妈讲以后我可能给不了她一个月1500
6397
4
...
腾讯提前批后台开发凉经teg
6397
5
...
后端实习到底该干什么啊
5268
6
...
实习,别太较真
4768
7
...
王侯将相宁有种乎!
4718
8
...
卷王的风气还是吹到了实习
3980
9
...
给公司上一课
3156
10
...
上班第一周总结
2487
创作者周榜
更多
正在热议
更多
#
打工人的工作餐日常
#
51582次浏览
402人参与
#
哪些公司真双非友好?
#
15046次浏览
81人参与
#
追觅科技求职进展汇总
#
17727次浏览
120人参与
#
你觉得技术面多长时间合理?
#
98714次浏览
716人参与
#
26届的你们有几段实习?
#
39393次浏览
448人参与
#
月薪多少能在一线城市生存
#
22237次浏览
271人参与
#
双非能在秋招上岸吗?
#
220835次浏览
1168人参与
#
你后悔自己读研吗?
#
17213次浏览
229人参与
#
非技术2023笔面经
#
248433次浏览
2412人参与
#
你以为的实习VS真实的实习
#
24307次浏览
222人参与
#
当下环境,你会继续卷互联网,还是看其他行业机会
#
117101次浏览
808人参与
#
你认为哪些项目算烂大街?
#
15982次浏览
265人参与
#
机械校招之路总结
#
93490次浏览
1893人参与
#
学历贬值真的很严重吗?
#
23378次浏览
166人参与
#
你被哪些公司秒挂过?
#
29354次浏览
237人参与
#
产品实习,你更倾向大公司or小公司
#
159353次浏览
1964人参与
#
网申一定要掌握的小技巧
#
10657次浏览
66人参与
#
找工作时的取与舍
#
82588次浏览
589人参与
#
最难的技术面是哪家公司?
#
8844次浏览
71人参与
#
机械人,你拿到几个offer啦
#
38718次浏览
320人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务