• https://leetcode-cn.com/problems/buddy-strings/solution/onshi-jian-fu-za-du-chao-9294-by-libins-haza/
    # 来源:力扣(LeetCode)
    # 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。">字符串内容替换
    # 将a中内容替换后,使之与b相同
    # a = “hello world”
    # b = “helloworld”
    # newa = a.split(“ “)
    # if “”.join(newa) == b:
    # print(“”.join(newa))
    # # 注意a 末尾最后两个字符与b不一样,需要将a中最后两个字符位置替换
    # a = “hellowordl”
    # b = “helloworld”
    # lista = list(a)
    # list_b = list(b)
    # for i in range(len(list_a)):
    # if list_a[i] == list_b[i]:
    # print(i)
    # else:
    # print(list_a[i],”a—>b”,list_b[i])
    # list_a[i] == list_b[i]
    # print(“list_a”,list_a)
    # # print(list_a)
    # # print(list_b)
    def buddy_strings(A, B):
    if len(A) != len(B):
    return False
    diffa = [] # 分别存放两个字符串中不同的字母
    diffb = []
    cnt = 0 # 记录AB不相同字母的个数
    for i in range(len(A)):
    if A[i] != B[i]:
    diffa.append(A[i])
    diffb.append(B[i])
    cnt += 1
    if cnt > 2: # 超过两个不相同的字母,直接返回FALSE
    return False
    # 如果AB不相同的字母刚好等于2,再判断这两个字母是否相等
    if cnt == 2 and diffa[0] == diffb[1] and diffa[1] == diffb[0]:
    return True
    if cnt == 0: # 如果输入AB完全相同,需要验证是否有重复的字母,一旦有就可以通过交换让其相等
    dicts = {}
    for a in A:
    if a in dicts:
    return True
    dicts[a] = 1
    return False
    if “__name
    “ == “__main
    “:
    a = “helloworld”
    b = “helloworld”
    buddy_strings(a,b)
    # 作者:libins
    # 链接:https://leetcode-cn.com/problems/buddy-strings/solution/onshi-jian-fu-za-du-chao-9294-by-libins-haza/
    # 来源:力扣(LeetCode)
    # 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    字符串内容替换
    # 将a中内容替换后,使之与b相同
    # a = “hello world”
    # b = “helloworld”
    # newa = a.split(“ “)
    # if “”.join(newa) == b:
    # print(“”.join(newa))
    # # 注意a 末尾最后两个字符与b不一样,需要将a中最后两个字符位置替换
    # a = “hellowordl”
    # b = “helloworld”
    # lista = list(a)
    # list_b = list(b)
    # for i in range(len(list_a)):
    # if list_a[i] == list_b[i]:
    # print(i)
    # else:
    # print(list_a[i],”a—>b”,list_b[i])
    # list_a[i] == list_b[i]
    # print(“list_a”,list_a)
    # # print(list_a)
    # # print(list_b)
    def buddy_strings(A, B):
    if len(A) != len(B):
    return False
    diffa = [] # 分别存放两个字符串中不同的字母
    diffb = []
    cnt = 0 # 记录AB不相同字母的个数
    for i in range(len(A)):
    if A[i] != B[i]:
    diffa.append(A[i])
    diffb.append(B[i])
    cnt += 1
    if cnt > 2: # 超过两个不相同的字母,直接返回FALSE
    return False
    # 如果AB不相同的字母刚好等于2,再判断这两个字母是否相等
    if cnt == 2 and diffa[0] == diffb[1] and diffa[1] == diffb[0]:
    return True
    if cnt == 0: # 如果输入AB完全相同,需要验证是否有重复的字母,一旦有就可以通过交换让其相等
    dicts = {}
    for a in A:
    if a in dicts:
    return True
    dicts[a] = 1
    return False
    if “__name
    “ == “__main
    “:
    a = “helloworld”
    b = “helloworld”
    buddy_strings(a,b)
    # 作者:libins
    # 链接:https://leetcode-cn.com/problems/buddy-strings/solution/onshi-jian-fu-za-du-chao-9294-by-libins-haza/
    # 来源:力扣(LeetCode)
    # 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。