풀이
class Solution {
public boolean areOccurrencesEqual(String s) {
HashMap<Character, Integer> hashMap = new HashMap<>();
for(Character c: s.toCharArray()) {
hashMap.put(c, hashMap.getOrDefault(c, 0)+1);
}
int k = hashMap.get(s.charAt(0));
for(Integer value: hashMap.values()) {
if(k != value)
return false;
}
return true;
}
}
다른 사람 풀이
class Solution {
public boolean areOccurrencesEqual(String s) {
Map<Character, Integer> counts = new HashMap<>();
for (char c: s.toCharArray()) {
counts.put(c, counts.getOrDefault(c, 0) + 1);
}
Set<Integer> frequencies = new HashSet<>(counts.values());
return frequencies.size() == 1;
}
}
set의 size를 사용할 수도 있다!
'Software Engineering > Algorithm' 카테고리의 다른 글
[LeetCode] #1248 Count Number of Nice Subarrays (0) | 2024.08.05 |
---|---|
[LeetCode] #560 Subarray Sum Equals K (0) | 2024.07.06 |
[LeetCode] #2248 Intersection of Multiple Arrays (0) | 2024.06.23 |
[LeetCode] First Letter to Appear Twice (1) | 2024.06.22 |
[LeetCode] Two Sum (0) | 2024.06.22 |