我有一个列表/数组,其中包含表单的每个条目[string - > String []]
现在我想找到一个元素随后重复的最大次数
示例:
hash1 -> [method1, method2 , method3]
hash2 -> [method1, method4]
hash3 -> [method1, method5]
hash4 -> [method1, method2, method5]
hash5 -> [method2]
hash6 -> [method2]
答案是4(方法1随后重复四次。我们不能将方法2视为连续重复的最大次数为3)
如果我能用Java获取此代码,我将非常感激。但其他语言也可以使用。
答案 0 :(得分:1)
我会使用HashMap来保持当前的计数,并使用int来表示最长的链。
For each entry in list
For each string in entry
If string in HashMap, increment the value
Else add to HashMap with value 1
Remove all pairs from HashMap that weren't in the last entry
Update longest chain length