题目
给定两个字符串 s 和 t,它们只包含小写字母。
字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。
请找出在 t 中被添加的字母。
示例:
输入:
s = "abcd"
t = "abcde"
输出:
e
解释:
'e' 是那个被添加的字母。
思路
通过数组统计字符出现个数
实现
public char findTheDifference(String s, String t) {
int[] arr = new int[26];
char[] sArr = s.toCharArray();
char[] tArr = t.toCharArray();
for (char c : sArr) {
arr[c - 'a']++;
}
for (char c : tArr) {
arr[c - 'a']--;
if (arr[c - 'a'] < 0) {
return c;
}
}
return 0;
}