Skip to content

Commit f7d5b8c

Browse files
solves majority element
1 parent 4fbffd5 commit f7d5b8c

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

src/MajorityElement.java

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import java.util.HashMap;
2+
import java.util.Map;
3+
4+
public class MajorityElement {
5+
public int majorityElement(int[] array) {
6+
Map<Integer, Integer> frequencies = getFrequencies(array);
7+
int maxFrequency = frequencies.values().stream().max(Integer::compareTo).get();
8+
for (Map.Entry<Integer, Integer> entry : frequencies.entrySet()) {
9+
if (entry.getValue() == maxFrequency) {
10+
return entry.getKey();
11+
}
12+
}
13+
14+
return -1;
15+
}
16+
17+
private static Map<Integer, Integer> getFrequencies(int[] array) {
18+
Map<Integer, Integer> result = new HashMap<>();
19+
for (int element : array) {
20+
result.put(element, result.getOrDefault(element, 0) + 1);
21+
}
22+
return result;
23+
}
24+
}

0 commit comments

Comments
 (0)