栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java:找到一个数组中是否有主要元素(一个元素出现次数超过数组长度一半)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java:找到一个数组中是否有主要元素(一个元素出现次数超过数组长度一半)

问题描述:

思路:遍历数组,将其中的元素一key:value的形式加到map集合中,key表示值,value表示次数.
如果map中有这个数,则利用 key重复,则覆盖value 的规则,将次数+1;若没有这个数,则向map中添加元素:数值,次数:1
遍历数组更新map的同时,比较这个数组元素在map里的value值是否大于数组长度一半,当有key的value大于数组长度的一半时,输出key,跳出循环即可。

import java.util.HashMap;

public class Main {

	public static void main(String[] args) {
		int[] arr=new int[]{1,2,3,4,3,3,0,0};
		zhuyu(arr);
	}
	public  static void zhuyu(int[] arr) {
		HashMap map =new HashMap();
		for(int i=0;iarr.length/2) {
				System.out.println(arr[i]);
			}
			
		}
		if(map.size()>arr.length/2) {
				System.out.println("该数组没有主要元素");
			}
		
	}
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1021244.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号