文巾解题 面试题 01.02. 判定是否互为字符重排

Posted UQI-LIUWJ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文巾解题 面试题 01.02. 判定是否互为字符重排相关的知识,希望对你有一定的参考价值。

1 题目描述

2 解题思路

2.1 replace

对每一个在s1中的字符,如果s2中没有,那么说明两个不匹配,返回false;如果s2中有,那么将s2中的一个这个字符换成‘’

如果s1全部遍历完了,都是匹配的,且s1和s2一样长,那么说明两个字符串通过重新排列后,是一样的,返回True

class Solution:
    def CheckPermutation(self, s1: str, s2: str) -> bool:
        if(len(s1)!=len(s2)):
            return False
        for i in s1:
            print(i,s2)
            if(i not in s2):
                return(False)
            else:
                s2=s2.replace(i,'',1)
            
        return(True)

 2.2 list

转换成list,list排序,看两个list是否相同

class Solution:
    def CheckPermutation(self, s1: str, s2: str) -> bool:
        l1=list(s1)
        l2=list(s2)
        l1.sort()
        l2.sort()
        return(l1==l2)

以上是关于文巾解题 面试题 01.02. 判定是否互为字符重排的主要内容,如果未能解决你的问题,请参考以下文章

「 每日一练,快乐水题 」面试题 01.02. 判定是否互为字符重排

「 每日一练,快乐水题 」面试题 01.02. 判定是否互为字符重排

算法面试题 01.02. 判定是否互为字符重排

面试题 01.02. 判定是否互为字符重排

文巾解题 面试题 01.01. 判定字符是否唯一

字符串面试题 01.02. 判定是否互为字符重排