leetcode-1347. 制造字母异位词的最小步骤数

原始思路

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
class Solution {
public int minSteps(String s, String t) {
Map<Character, Integer> sMap = new HashMap<>();
Map<Character, Integer> tMap = new HashMap<>();

for (int i = 0; i < s.length(); i++) {
sMap.put(s.charAt(i), sMap.getOrDefault(s.charAt(i), 0) + 1);
tMap.put(t.charAt(i), tMap.getOrDefault(t.charAt(i), 0) + 1);
}

int ans = 0;
for(Map.Entry<Character, Integer> entry : tMap.entrySet()){
char c = entry.getKey();
int value = entry.getValue();
if (sMap.containsKey(c)) {
if (sMap.get(c) < value) {
ans += value - sMap.get(c);
}
}else {
ans += value;
}
}

return ans;
}
}