在表格(5 x 4,二维数组)提供的数据中,可以看出Bob赢得了大多数赛事,总共赢了3场。
我怎样才能算出并弄清楚谁在阵列中出现的名字最多?数组的名称和大小由用户设置,因此可以显示不同的值。
答案 0 :(得分:0)
您可以使用 HashMap ,将名称作为键及其出现的次数作为其值,然后遍历整个HashMap并找到具有最高值的HashMap。 让我们举个例子,
假设
set(key,value)
是一个函数,它接受一个键(例如。' Bob')和相应的值并添加到HashMap对象hm,
get(key)
,返回此键在hm中出现的次数(HashMap对象),
在穿越你时可以做到,
count = hm.get(some_name)
hm.put(some_name,count+1)
,
现在遍历地图以找到具有最高值的键。 整体时间和空间复杂度将为O(N * M)。
希望这有帮助。