题解 | 找到字符串中的异位词

from re import L
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param s string字符串 
# @param p string字符串 
# @return int整型一维数组
#
class Solution:
    def findWord(self , s: str, p: str) -> List[int]:
        # write code here
        k=len(p)
        dip={}
        for i,x in enumerate(p):
            if x not in dip:
                dip[x]=1
            else:
                dip[x]+=1

        left=0
        dix={}
        result=[]
        for right in range(len(s)):
            if s[right] not in dix:
                dix[s[right]]=1
            else:
                dix[s[right]]+=1
            if right<k-1:
                continue

            while dix!=dip:
                dix[s[left]]-=1
                if dix[s[left]]==0:
                    del dix[s[left]]
                left+=1
                break    
            if dix==dip:
                result.append(left)
        return result    









全部评论

相关推荐

兄弟们,实习都是在接各种api,该怎么包装简历
仁者伍敌:感觉我自己做小项目也是各种api啊,我要怎么包装简历
点赞 评论 收藏
分享
点赞 评论 收藏
分享
06-20 17:42
东华大学 Java
凉风落木楚山秋:要是在2015,你这简历还可以月入十万,可惜现在是2025,已经跟不上版本了
我的简历长这样
点赞 评论 收藏
分享
不亏是提前批,神仙打架,鼠鼠不配了
站队站对牛:现在92都报工艺岗了
投递韶音科技等公司7个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务