알고리즘

Unique한 문자인가

e-pd 2020. 8. 24. 17:32

 

1. Hash Map

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
   public boolean solve(String s) {
        Map<Character, Integer> map = new HashMap<>();
 
        char[] chars = s.toCharArray();
        for (char c : chars) {
            if (map.containsKey(c)) {
                return false;
            } else {
                map.put(c, map.getOrDefault(c, 0+ 1);
            }
        }
 
        return true;
    }
cs

 

2. Hash Set

 

1
2
3
4
5
6
7
8
9
10
11
12
13
 public boolean solve(String s) {
 
        HashSet<Character> set = new HashSet<>();
        char[] chars = s.toCharArray();
        for (char c: chars) {
            if (set.contains(c)) {
                return false;
            }
 
            set.add(c);
        }
        return true;
    }
cs