lc169 多数元素

2023-12-24 14:46:15

lc169 多数元素
问题描述:从数组中找出元素出现次数大于n/2的元素,n为数组的长度

题解M1-HashMap:先将元素和元素出现的次数存到hashMap中,再找到出现次数最多的map.Entry,返回它的key。
题解M2-排序:先将数组中的元素排序,出现次数大于n/2的元素一定在n/2的位置。


M1注意点:
1.Map.Entry<Integer, Integer> majorityEntry = null; //初始化一个Map.Entry内部接口,该接口有以下常用方法:getKey(): 返回此映射条目的键。getValue(): 返回此映射条目的值。setValue(V value): 使用指定的值替换此映射条目的值。
2.Map.entrySet() 是 Map 接口中的一个方法,它返回一个 Set<Map.Entry<K, V>> 类型的集合,其中包含了 Map 中的所有键值对,每个键值对都表示为一个 Map.Entry 实例。1遍历该集合可快速访问Map中所有的键值对。2可以使用集合框架提供的方法,如 size()、contains()、remove() 等,来对其中的键值对进行操作。

M2注意点:
Arrays.sort 是 Java 中的一个方法,用于对数组进行排序,对于 byte, char, double, float, int, long, 和 short 类型的数组,Arrays.sort 会使用优化的快速排序算法;对于 Object 类型的数组,例如 String 或者自定义的类,排序会使用归并排序算法。

文章来源:https://blog.csdn.net/m0_53842576/article/details/135181127
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。