389. 找不同

Posted lijianming180

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了389. 找不同相关的知识,希望对你有一定的参考价值。

题目

给定两个字符串 st,它们只包含小写字母。

字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。

请找出在 t 中被添加的字母。
示例:

1
2
3
4
5
6
7
8
9
输入:
s = "abcd"
t = "abcde"

输出:
e

解释:
'e' 是那个被添加的字母。

解答

思路

这道题目可以转化为一个列表,其中有一个字符只出现了一次,其余的字符均出现两次的问题。将字符转换为char,使用异或即可。

代码

1
大专栏  389. 找不同n class="line">2
3
4
5
6
7
8
9
10
11
12
13
14
class  {
public char findTheDifference(String s, String t) {
char tmp = 0x00;
for(int i = 0;i < s.length();i++) {
tmp =(char)(tmp ^ s.charAt(i));
}

for(int i = 0;i < t.length();i++) {
tmp = (char)(tmp ^ t.charAt(i));
}

return tmp;
}
}

以上是关于389. 找不同的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode Algorithm 389. 找不同

LeetCode389.找不同

389. 找不同

389. 找不同

Leetcode练习(Python):第389题:找不同:给定两个字符串 s 和 t,它们只包含小写字母。 字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。 请找出在 t 中被添加

Leetcode练习(Python):第389题:找不同:给定两个字符串 s 和 t,它们只包含小写字母。 字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。 请找出在 t 中被添加