小黑江景房睡了一晚,去吃陶仙居的烧卖和糊汤粉,一个人吃了湖北菜馆武昌鱼,收到南京马拉松大众一级证书,回来后发烧了好几天合唱考核没过报名打鼓被调剂到舞狮的leetcode之旅:30. 串联所有单词的子串

固定窗口大小的滑动窗口法

class Solution:
    def findSubstring(self, s: str, words: List[str]) -> List[int]:
        # 字符串长度
        n = len(s)
        # 词表个数
        word_num = len(words)
        # 设置计数器
        counter = collections.Counter(words)
        # 每个单词长度
        word_len = len(words[0])
        # 固定窗口大小
        window_size = word_len * word_num
        # 开始滑动窗口
        res = []
        for i in range(n-window_size+1):
            # 设置临时计数器,用于计算窗口中的单词种类与个数
            counter_temp = collections.Counter()
            # 对于窗口进行切词
            for t in range(i, i+window_size, word_len):
                word = s[t:t+word_len]
                counter_temp[word] += 1
            # 判断是否与目标词表的单词种类与个数相等
            if counter_temp == counter:
                res.append(i)
        return res

在这里插入图片描述

双指针法

class Solution:
    def findSubstring(self, s: str, words: List[str]) -> List[int]:
        # 字符串长度
        n = len(s)
        # 词表大小
        number_words = len(words)
        # 单词长度
        n_word = len(words[0])
        # 初始化计数变量
        counter = collections.Counter(words)
        # 结果数组
        res = []
        # 双指针迭代
        for i in range(n_word):
            # 开始进行双指针操作
            left = i
            right = i
            map_ = collections.Counter()
            while right + n_word <= n:
                # 取出该单词
                word = s[right:right+n_word]
                # 添加窗口
                map_[word] += 1
                # print(left, right, s[left:right], count)
                # 左指针右移动
                while map_[word] > counter[word]:
                    left_word = s[left:left+n_word]
                    map_[left_word] -= 1
                    left += n_word
                # 如果是词表中的词并且符合个数要求,窗口大小+1
                right += n_word
                if (right-left) == number_words*n_word:
                    res.append(left)
        return res

在这里插入图片描述

双指针优化(跳过不存在单词)

class Solution:
    def findSubstring(self, s: str, words: List[str]) -> List[int]:
        # 字符串长度
        n = len(s)
        # 词表大小
        size = len(words)
        # 词表计数器
        counter = collections.Counter(words)
        # 单词长度
        word_len = len(words[0])
        # 结果数组
        res = []
        # 遍历起始位置
        for i in range(word_len):
            # 定义双指针
            left = i
            right = i
            # 定义窗口计数器
            temp = collections.Counter()
            # 开始迭代双指针
            while right + word_len <= n:
                # 右指针单词
                word = s[right:right+word_len]
                # 单词没在词表里,窗口瞬间变为0,双指针均跳过
                if word not in words:
                    left = right+word_len
                    temp.clear()
                # 单词在词表中,判断其个数是否超过词表
                else:
                    # 窗口增加一个单词
                    temp[word] += 1
                    while temp[word] > counter[word]:
                        # 左指针单词
                        left_word = s[left:left+word_len]
                        # 窗口减少一个单词
                        temp[left_word] -= 1
                        left += word_len
                right += word_len
                # 结果添加
                if right - left == word_len * size:
                    res.append(left)
        return res

在这里插入图片描述

小黑生活(通过群聊和朋友圈的图片回忆,图片不连贯)

在武汉江边江景房,起床了看看外面的大楼和江景,天气是阴的,跟我内心一样孤独。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

出来转转汉口江滩

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

一个人参观八七会议旧址,缅怀先烈

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

去网红店陶仙居吃烧卖和糊汤粉

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

大冷天骑车去古德寺参观

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

去“食藕武昌鱼精致湖北菜”吃武昌鱼,一个人吃一条

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

喝茶颜悦色,蔓越阑珊

在这里插入图片描述
在这里插入图片描述

江边走走

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

坐地铁前往天河机场

在这里插入图片描述
在这里插入图片描述

坐上了飞往北京大兴的飞机,拍到了晚霞好美啊

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

玩命冲刺赶上了大兴机场的高铁发车,速度快还比地铁便宜

在这里插入图片描述
在这里插入图片描述

麦当劳早餐

在这里插入图片描述

午餐干饭

在这里插入图片描述
在这里插入图片描述

午间咖啡

在这里插入图片描述

晚餐麻辣烫

在这里插入图片描述
在这里插入图片描述

搓澡蒸桑拿

在这里插入图片描述
在这里插入图片描述

紫光园早餐

在这里插入图片描述

午餐牛肉面干饭

在这里插入图片描述

午间咖啡

在这里插入图片描述

晚上在家涮点儿羊肉

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

收到了南京马拉松奖状

在这里插入图片描述

紫光园豆腐脑

在这里插入图片描述

午餐干饭

在这里插入图片描述

午间咖啡

在这里插入图片描述

晚餐食堂煎饼

在这里插入图片描述

去朝阳公园参加团跑活动,发现没人去,自己买了杯喜茶,回家喝啤酒吃薯片

在这里插入图片描述

早餐紫光园羊汤

在这里插入图片描述
在这里插入图片描述

午餐干饭

在这里插入图片描述

午间咖啡

在这里插入图片描述

学习flex前端框架

在这里插入图片描述

盲人按摩

在这里插入图片描述

麦当劳早餐

在这里插入图片描述

提提神,苏州半程环阳山马拉松送的饮料

在这里插入图片描述

午餐干饭

在这里插入图片描述

午间咖啡

在这里插入图片描述

晚餐食堂三明治

在这里插入图片描述
在这里插入图片描述

练琴前的烤冷面

在这里插入图片描述

回家发现有点儿发烧

在这里插入图片描述
在这里插入图片描述

发了一周末烧来单位的午餐,中午骑车去拔罐,结果手机没电了找不找地方着急死了,最后去便利蜂充电

在这里插入图片描述

回家又发烧了

在这里插入图片描述

在家请假点了个喜茶外卖,少送了一个蛋糕,后来打电话才补送来

在这里插入图片描述

好转了

在这里插入图片描述

张亮麻辣烫下午餐干饭

在这里插入图片描述
在这里插入图片描述

单位午餐干饭

在这里插入图片描述

单位晚餐干饭

在这里插入图片描述

练琴前烤冷面

在这里插入图片描述

晚间按摩

在这里插入图片描述

麦当劳早餐

在这里插入图片描述

午餐干饭

在这里插入图片描述

晚餐前的串串麻辣烫

在这里插入图片描述

回姥姥家,又给我买了几斤新鲜羊肉

在这里插入图片描述

晚上回来后喜茶学习,看看刑法,最后放弃了

在这里插入图片描述

跟尚香吃KFC

在这里插入图片描述

搓澡汗蒸

在这里插入图片描述

麦当劳早餐

在这里插入图片描述

午餐干饭

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

午间咖啡

在这里插入图片描述

回家煎牛排,与方便面混着吃

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

练完琴跑个步

在这里插入图片描述

食堂早餐干饭

在这里插入图片描述

午餐干饭

在这里插入图片描述

午间咖啡

在这里插入图片描述

回学校跟师弟吃个饭,顺便取一下屏幕,师弟请我吃麻辣烫

在这里插入图片描述
在这里插入图片描述

成功把阿黄的屏幕拿了回来,并连接成功

在这里插入图片描述

午餐干饭

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

午间咖啡

在这里插入图片描述

晚上跑个步,跑完喝两口

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

食堂早餐

在这里插入图片描述

午餐干饭

在这里插入图片描述
在这里插入图片描述

午间咖啡

在这里插入图片描述

晚霞

在这里插入图片描述

晚餐pizza,忘拍了

在这里插入图片描述

晚饭后奈雪的茶

在这里插入图片描述

来个盲人足疗

在这里插入图片描述

第二天中午再来个刮痧和拔罐

在这里插入图片描述

晚上去vr练车,中间出来吃个卤煮

在这里插入图片描述
在这里插入图片描述

上午去学钢琴考级曲子

在这里插入图片描述

一个人看年会不能停

在这里插入图片描述

看完电影绕着周围跑跑步

在这里插入图片描述

早餐食堂干饭在这里插入图片描述

在这里插入图片描述

午餐干饭

在这里插入图片描述
在这里插入图片描述

同事去了长沙参加婚礼,给我带了茶颜悦色包

在这里插入图片描述

午间咖啡

在这里插入图片描述

报名了合唱表演,考核被刷了

在这里插入图片描述

晚餐肉夹馍干饭

在这里插入图片描述

报名打鼓,最后被调剂到了舞狮子

在这里插入图片描述
在这里插入图片描述

夜宵喝点儿酒吃个串

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

麦当劳早餐

在这里插入图片描述

我的屏幕们在这里插入图片描述

午餐干饭

在这里插入图片描述
在这里插入图片描述

午间咖啡

在这里插入图片描述

看看日语

在这里插入图片描述

晚餐食堂干饭

在这里插入图片描述

晚间跑步

在这里插入图片描述

早餐干饭在这里插入图片描述

午餐干饭

在这里插入图片描述
在这里插入图片描述

午间咖啡

在这里插入图片描述

下次更新舞狮排练及春节前生活!!加油生活

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值