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.
采用HASH的方式对两个数组元素个数进行记录,发现个数不同时则为新增加的字符:
char findTheDifference(char* s, char* t) {
if (s == NULL || t == NULL)
return '\0';
int a[128] = {0};
int b[128] = {0};
int i = 0;
for (; i < strlen(s); i ++)
{
a[*(s+i)] += 1;
}
for(i = 0; i < strlen(t); i ++)
{
b[*(t+i)] += 1;
}
for (i = 96; i < 123; i ++)
{
if (a[i] != b[i])
{
break;
}
}
return (i);
}