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);
}
}
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);
}
}
相关文章推荐
- 389. Find the Difference
- [LeetCode]--389. Find the Difference
- 389. Find the Difference
- LeetCode - 389. Find the Difference - 三种不同解法 - ( C++ ) - 解题报告
- leetcode-389. Find the Difference
- 389. Find the Difference注意异或运算的巧妙使用^
- 389. Find the Difference | 找字符串中的不同
- LeetCode 389. Find the Difference
- 389. Find the Difference
- [leetcode] 389. Find the Difference 解题报告
- 389. Find the Difference
- 389. Find the Difference
- [leetcode: Python]389. Find the Difference
- [LeetCode]389. Find the Difference
- Leetcode 389 Find the Difference
- LeetCode 389. Find the Difference(异或)
- 389. Find the Difference 难度:easy
- Leetcode 由易入难 389. Find the Difference
- 389. Find the Difference
- LeetCode 389. Find the Difference