leetcode——30. 串联所有单词的子串
class Solution: def findSubstring(self, s: str, words): if s=='' or words==[]:return [] n=len(words) m=len(words[0]) r=[] i=0 while i<len(s)-m*n+1: for j in words: p=s[i:i+m*n] t=list(p[m*i:m*(i+1)] for i in range(n)) if t.count(j)!=words.count(j): i+=1 break else: r.append(i) i+=1 return r
执行用时 :908 ms, 在所有 python3 提交中击败了48.75%的用户
内存消耗 :13.9 MB, 在所有 python3 提交中击败了5.30%的用户
这里面用到 t 的原因是:
不用 t 的时候,比如:s = "ababaab", words = ["ab","ba","ba"] 就会报错!
错误原因:因为计算时候我们会从字符串中间计算,也就是说会出现单词截断的问题。
我的前方是万里征途,星辰大海!!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步