• 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)

     

  • 相关阅读:
    面试题汇总
    桥接模式
    2010412 面试题
    2010412 面试题1
    访问者模式
    原码、反码、补码什么意思?有什么用?
    装饰模式
    mysql 忘记root密码 进行重置
    运维开源工具一览
    编写一个函数计算小费,小费为总账单的20%
  • 原文地址:https://www.cnblogs.com/Lin-Yi/p/7541790.html
Copyright © 2020-2023  润新知