您的位置:首页 > Web前端

leetcode刷题系列-389. Find the Difference

2016-10-14 10:47 369 查看
Given two strings s and t which consist of only lowercase letters.

String t is generated by random shuffling string s and then add one more letter at a random position.

Find the letter that was added in t.

Example:
Input:
s = "abcd"
t = "abcde"

Output:
e

Explanation:
'e' is the letter that was added.


Subscribe to see which companies asked this question

class Solution {
public:
char findTheDifference(string s, string t) {
int lens = s.size();
int lent = t.size();
map<char,int> s_m;
for(int i = 0; i < lens; ++i)
{
if(s_m.find(s[i]) != s_m.end())
s_m[s[i]]++;
else
s_m[s[i]] = 1;
}
for(int i = 0; i < lent; ++i)
{
if(s_m.find(t[i]) == s_m.end())
{

return t[i];
}
else
{
s_m[t[i]]--;
if(s_m[t[i]] < 0)
return t[i];
}
}
return t[0];
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: