网站设计企业联系方式内容,做网站怎么找优质客户,株洲网红餐厅,适合美工的设计网站题目#xff1a;给定两个字符串 s1 和 s2#xff0c;写一个函数来判断 s2 是否包含 s1 的排列。换句话说#xff0c;第一个字符串的排列之一是第二个字符串的子串。示例1#xff1a;输入: s1 ab s2 eidbaooo输出: True解释: s2 包含 s1 的排列之… 题目给定两个字符串 s1 和 s2写一个函数来判断 s2 是否包含 s1 的排列。换句话说第一个字符串的排列之一是第二个字符串的子串。示例1输入: s1 ab s2 eidbaooo输出: True解释: s2 包含 s1 的排列之一 (ba).示例2输入: s1 ab s2 eidboaoo输出: False注意输入的字符串只包含小写字母两个字符串的长度都在 [1, 10,000] 之间解题思路s1的排列有很多种只需要找到s2中的一个字符串片段且该片段满足每个字母的数量与s1对应字母的数量相等的条件。统计字符串片段和s1中字母的数量判断字符串片段和s1中对应的字母数量是否相等。遍历字符串s2不断以s1的长度来截取字符串片段然后做 思路2 中的判断。Python代码class Solution: def checkInclusion(self, s1: str, s2: str) - bool: index 0 s1_dict collections.Counter(s1) while index (len(s2) - len(s1)): # 截取长度为len(s1)的字符串片段 s_dict collections.Counter(s2[index:(index len(s1))]) for char, num in s1_dict.items(): if s_dict.get(char) ! num: break else: return True index 1 return False--END--