标签:一面 map 哪儿 iterator nums int 面经 count System
- 自我介绍
- 算法题:对数组排序,取最大值,最小值,重复次数最多的值
其中排序使用的是:
Arrays.sort(nums)
使用HashMap时,注意迭代的方式:Iterator iterator = map.keySet().iterator();
完整代码如下:
public class MapIterator {
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int[] nums = new int[n];
for (int i = 0; i < n; i++) {
nums[i] = in.nextInt();
}
Arrays.sort(nums);
HashMap<Integer, Integer> map = new HashMap<>();
for (int i = 0; i < n; i++) {
int count = map.getOrDefault(nums[i], 0);
if (count == 0) {
map.put(nums[i], 1);
} else {
map.remove(nums[i]);
map.put(nums[i], count+1);
}
}
int max = Integer.MIN_VALUE;
int frekey = -1;
Iterator iterator = map.keySet().iterator();
while (iterator.hasNext()) {
int key = (int)iterator.next();
int count = map.get(key);
if (count > max) {
max = count;
frekey = key;
}
}
System.out.println("最大值:" + nums[n-1]);
System.out.println("最小值:" + nums[0]);
System.out.println("重复次数最多的值:" + frekey);
}
}
- MySQL如何查看前50行数据(limit)
- MySQL如何查看一个查询语句是否使用了索引(explain)
- 项目中用的什么协议(http)
- get和post有什么区别
- 状态码500和502有什么区别
- 反问
标签:一面,map,哪儿,iterator,nums,int,面经,count,System 来源: https://www.cnblogs.com/yuanyunjing/p/15328903.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。