您的位置:首页 > Web前端

389. Find the Difference

2018-01-11 14:30 295 查看
题目描述:

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.

思路一:异或

class Solution {
public char findTheDifference(String s, String t) {
if (s.length() == 0 && t.length() == 1)
return t.charAt(0);
int tLen = t.length();
char res = t.charAt(tLen - 1);
for (int i = 0; i < tLen - 1; i++)
{
res ^= s.charAt(i);
res ^= t.charAt(i);
}
return res;
}
}思路二:多出一个char类型的值
class Solution {
public char findTheDifference(String s, String t) {
if (s.length() == 0 && t.length() == 1)
return t.charAt(0);
int charCodeS = 0;
int charCodeT = 0;
for (int i = 0; i < s.length(); i++)
{
charCodeS += (int)s.charAt(i);
charCodeT += (int)t.charAt(i);
}
charCodeT += (int)t.charAt(t.length() - 1);
return (char)(charCodeT - charCodeS);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: