-
Notifications
You must be signed in to change notification settings - Fork 0
/
MajorityElement.java
38 lines (36 loc) · 1.02 KB
/
MajorityElement.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package leetcode;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
public class MajorityElement {
public static int majorityElement(int[] num) {
int n = num.length;
HashMap<Integer,Integer> m = new HashMap<Integer,Integer>();
for(int i = 0;i < n;i++){
if(m.get(num[i]) == null){
m.put(num[i], 1);
}
else{
int temp = m.get(num[i]);
m.put(num[i], ++temp);
}
}
Iterator<Entry<Integer, Integer>> it = m.entrySet().iterator();
int key = 0;
int value = 0;
while(it.hasNext()){
@SuppressWarnings("rawtypes")
Map.Entry entry = (Map.Entry) it.next();
if((Integer)entry.getValue() > value){
key = (Integer) entry.getKey();
value = (Integer) entry.getValue();
}
}
return key;
}
public static void main(String[] args){
int[] num = {2,2,1};
System.out.println(majorityElement(num));
}
}