给定两个字符串 s 和 t,它们只包含小写字母。
字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。
请找出在 t 中被添加的字母。
示例:
输入:
s = "abcd"
t = "abcde"
输出:
e
解释:
'e' 是那个被添加的字母。
题解:
两个数组,分别进行计数,然后最后找,谁多了一个,那就是谁重复了
public:
char findTheDifference(string s, string t) {
vector<int> hash(26,0);
vector<int> hash1(26,0);
for(auto x : s){
hash[x - 'a'] ++;
}
for(auto x : t){
hash1[x - 'a'] ++;
}
for(int i = 0 ; i < 26 ; i++){
if(hash[i] != hash1[i]) return 'a' + i;
}
return 'o';
}
};
找出字符串中添加的字母
本文介绍了一种算法,用于解决给定两个字符串s和t,其中t由s随机重排并添加一个字母,如何找出这个额外字母的问题。通过使用两个计数数组,对比两字符串的字符频率差异来定位新增的字母。
429

被折叠的 条评论
为什么被折叠?



