我有一个字符串数组:
String[] stringArray = {"x", "y", "z", "x", "x", "y", "a"};
Collection
按照每个频率的频率顺序将其排序为更小的最快/最有效的方法String
是什么?
我虽然关于在 a 中使用String
作为键,HashMap<String,Integer>
但这不会按频率排序
我考虑的另一种方法是使用TreeMap<Integer, String[]>
带有该整数的字符串列表,但似乎涉及很多检查..
如果可能的话,我试图避免使用多个循环,因为我的String
数组将比上面的数组大得多。谢谢!
编辑 我想要的只是能够按频率顺序输出字符串,并且最好能够将该字符串与其在数组中的频率配对,例如两个输出数组:
["x", "y", "z", "a"]
[3,2,1,1]
如果速度不是问题,这将是一个非常简单的问题,这就是为什么我在这里问伟大的思想 :)