Skip to content

Commit a6c7a8c

Browse files
Merge pull request matthewsamuel95#303 from SLR1999/master
added javaVersion of k-frequent words
2 parents afa6677 + 271191f commit a6c7a8c

File tree

2 files changed

+76
-0
lines changed

2 files changed

+76
-0
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
import java.util.*;
2+
import java.util.Map.Entry;
3+
import java.lang.*;
4+
5+
public class Analyzer
6+
{
7+
ArrayList<String> ar;
8+
Analyzer(ArrayList<String> ar1)
9+
{
10+
ar = ar1;
11+
}
12+
public ArrayList<String> return_final_ar()
13+
{
14+
LinkedHashMap<String, Integer> l_hm= new LinkedHashMap<String, Integer>();
15+
for (String str : ar)
16+
{
17+
if (!l_hm.containsKey(str))
18+
{
19+
l_hm.put(str, Collections.frequency(ar, str));
20+
}
21+
}
22+
Sort sort_ar = new Sort();
23+
List<Entry<String, Integer>> ls = new LinkedList<Entry<String, Integer>>(l_hm.entrySet());
24+
Collections.sort(ls, sort_ar);
25+
ar.clear();
26+
for(Entry ent : ls)
27+
{
28+
ar.add((String)ent.getKey());
29+
}
30+
return ar;
31+
}
32+
public class Sort implements Comparator<Entry<String, Integer>>
33+
{
34+
@Override
35+
public int compare(Entry<String, Integer> s1, Entry<String, Integer> s2)
36+
{
37+
if (s1.getValue() == s2.getValue())
38+
{
39+
return s1.getKey().compareTo(s2.getKey());
40+
}
41+
return (s1.getValue() - s2.getValue())*-1;
42+
}
43+
}
44+
}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
import java.util.*;
2+
import java.util.Map.Entry;
3+
import java.lang.*;
4+
import java.util.ArrayList;
5+
6+
class Main
7+
{
8+
public static void main(String[] args)
9+
{
10+
ArrayList<String> ar = new ArrayList<String>();
11+
// ar.add("i");
12+
// ar.add("love");
13+
// ar.add("leetcode");
14+
// ar.add("i");
15+
// ar.add("love");
16+
// ar.add("coding");
17+
ar.add("the");
18+
ar.add("day");
19+
ar.add("is");
20+
ar.add("sunny");
21+
ar.add("the");
22+
ar.add("the");
23+
ar.add("the");
24+
ar.add("sunny");
25+
ar.add("is");
26+
ar.add("is");
27+
Analyzer analyzer = new Analyzer(ar);
28+
ar = analyzer.return_final_ar();
29+
System.out.println(ar);
30+
31+
}
32+
}

0 commit comments

Comments
 (0)