gpt4 book ai didi

java - 有没有办法获得数组中元素出现的最高次数?

转载 作者:行者123 更新时间:2023-12-01 07:03:40 24 4
gpt4 key购买 nike

我有这个示例函数来获取列表中得票最多的名字,..如果我只知道列表中那些人的名字,它应该像下面一样简单。

public static String getHighestVotes(final List<String> votedNames) {

int a = Collections.frequency(votedNames, "Ann");
int b= Collections.frequency(votedNames, "Annie");
int c = Collections.frequency(votedNames, "Ana");

//some logic code here..

return "";
}

但是,我没有,所以下面的代码没有用。虽然我可以通过某些方式做到这一点.. 进行 for 循环等。如果列表的长度约为数百万,那么性能将是我的问题。 那么有没有办法减少这方面的工作呢?或者我真的应该去计算“唯一”等等。

最佳答案

获取您的姓名列表并将其添加到 map 中。例如:

Map<String, Integer> res = new HashMap<>();
votedNames.forEach( s -> {
if(res.get(s) == null) // initialize
// increment count for word
});

结果将是一个 HashMap ,其中包含每个单词的计数。

关于java - 有没有办法获得数组中元素出现的最高次数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33570307/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com