给定两个字符串 s 和 t,它们只包含小写字母。
字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。
请找出在 t 中被添加的字母。
输入:s = “abcd” , t = “abcde” ; 输出:e ;解释:‘e’ 是那个被添加的字母。
解法一:
比较简单的方法的是为 s 建立 map,key 记录出现的字符、val 记录出现的次数
遍历 t 表,把map 中次数小于1的字符 return 出来。
var findTheDifference = function(s, t) {
var smap={}
for(var i=0;i<s.length;i++){
if(smap[s[i]]){
smap[s[i]]+=1;
}else{
smap[s[i]]=1;
}
}
for(var i=0;i<t.length;i++){
if(smap[t[i]]>=1){
smap[t[i]]-=1
}else{
return t[i]
}
}
};