leetcode算法: 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.


这道题的意思是 给两个字符串,第二个字符串是第一个的乱序后再随机插入一个字母在随机的位置

要我们找到这个插入的字母

这道题难度不大,唯一的坑就是,很多人会想,第二个字符串哪个字符第一个里面没有就行,实际上 插入的字符有可能是重复的。



一种思想是:
对第二个字符串的元素,在第一个中出现过,就一次替换成"" 空字符串,这样第二个字符串最后会剩下要找的元素
python代码:
class Solution:
    def findTheDifference(self, s, t):
        """
        :type s: str
        :type t: str
        :rtype: str
        """
        for i in s :
            t=t.replace(i,"",1)
        return t


if __name__ == '__main__':
    s = Solution()
    res = s.findTheDifference("abcd","abcde" )
    print(res)

 

原文地址:https://www.cnblogs.com/Lin-Yi/p/7541790.html