Letter Tile Possibilities LeetCode solution in Java

1
class Solution {
2
private int result = 0;
3

4
public int numTilePossibilities(String tiles) {
5
Map<Character, Integer> map = new HashMap<>();
6
for (char c : tiles.toCharArray()) {
7
map.put(c, map.getOrDefault(c, 0) + 1);
8
}
9
find(map);
10
return result - 1;
11
}
12

13
public void find(Map<Character, Integer> map) {
14
result++;
15
for (Map.Entry<Character, Integer> m : map.entrySet()) {
16
char c = m.getKey();
17
int val = m.getValue();
18
if (val > 0) {
19
map.put(c, val - 1);
20
find(map);
21
map.put(c, val);
22
}
23
}
24
}
25
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0