389. Find the Difference
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.
解题要点:
用XOR,详情看以下code。
class Solution(object):
def findTheDifference(self, s, t):
"""
:type s: str
:type t: str
:rtype: str
"""
c = 0
for i in s:
c ^= ord(i)
for j in t:
c ^= ord(j)
return chr(c)
找差值,在for loop里一定要先处理t再处理s。
class Solution(object):
def findTheDifference(self, s, t):
"""
:type s: str
:type t: str
:rtype: str
"""
diff = 0
for i in range(len(s)):
diff += ord(t[i])
diff -= ord(s[i])
diff += ord(t[-1])
return chr(diff)
Last updated
Was this helpful?