我原来有个Perl 的小script,
主要是Match a key from log files,
然后 $ahash {key} ++;
这样我就知道哪种Key的出现次数最多
只要 Sort the hash by value 然后 Print out 就行了
非常容易,Sort by value 只要一句程序。
我觉得可能Java multi-thread 可以快些,
于是试着改写, 我发现Java 类似功能的Data structure 很多
like:
HashMap, HashSet, SortedMap, TreeSet, TreeMap
于是我就用了TreeMap
TreeMap tm = new TreeMap ( new MyComparator () );
挺不错,
可是,这是用 Key 来排序的,
我希望用 Value 来排序。
找了半天没找到。什么 Array.sort (), Collections.sort ()都不适用。
search google 也没答案。
最后只好又用了一个SortSet ,
觉的Java没这么土吧。
主要是Match a key from log files,
然后 $ahash {key} ++;
这样我就知道哪种Key的出现次数最多
只要 Sort the hash by value 然后 Print out 就行了
非常容易,Sort by value 只要一句程序。
我觉得可能Java multi-thread 可以快些,
于是试着改写, 我发现Java 类似功能的Data structure 很多
like:
HashMap, HashSet, SortedMap, TreeSet, TreeMap
于是我就用了TreeMap
TreeMap tm = new TreeMap ( new MyComparator () );
挺不错,
可是,这是用 Key 来排序的,
我希望用 Value 来排序。
找了半天没找到。什么 Array.sort (), Collections.sort ()都不适用。
search google 也没答案。
最后只好又用了一个SortSet ,
觉的Java没这么土吧。