主题
每日刷题总结 · 2026-07-29
今日题单
| 题 | 主标签 | 复盘 |
|---|---|---|
| 3. 无重复字符的最长子串 | 滑窗 + Map | 首发 AC;max 推左边界写对了 |
| 438. 找到字符串中所有字母异位词 | 定长滑窗 / 计数 | 排序指纹 TLE;缺增量更新 |
代码目录(不当博客看):3-无重复字符的最长子串/、438-找到字符串中所有字母异位词/。
今天练到什么
- 滑窗主菜开张:昨天建议「有余力开 3」,今天落地且一次过——相对 7/28 对撞题「先暴力再救」,今天 3 的手感更好。
- 同族第二题踩坑:438 和 3 都是窗,但约束从「无重复可变长」换成「定长 + 频次相等」;你用了 49 的排序指纹扫所有窗,复杂度对不上规模。
- 工程细节:438 比较器里的
console.log是实打实的超时帮凶;提交前清日志要成习惯。 - 模板缺口:可变长(3)会写;定长计数(438/567)还不会默写。
和教程线对齐:主力 07 · 滑动窗口;438 的异位词判据回扣 09 · 哈希表进阶。相对昨日 05 对撞,今天正式切到 07。
总体评分
| 维度 | 分(1~5) | 说明 |
|---|---|---|
| 技术正确性 | 4 | 3 全过;438 判据对但未 AC |
| 复杂度意识 | 3 | 3 有 O(n) 直觉;438 仍停在「能判就排」 |
| 代码严谨度 | 3.5 | 3 有冗余 delete/收尾;438 比较器与日志不严谨 |
| 综合 | 3.5 / 5 | 07 精讲题 3 过关加分;定长异位词窗是今天欠账 |
一句话总评:滑窗入门题拿下;同日 438 暴露「会异位词、不会定长滑窗计数」。
明天建议
目标:固化 3 的口述,补上 438/567 的 O(n) 模板。
- 必做:合上笔记默写 LC 3(
left = max(left, last+1));重写 LC 438 为 26 桶进一出一(禁止每窗sort)。 - 同套路延伸:567. 字符串的排列(438 的布尔版,同一套计数)。
- 有余力:回补昨天对撞默写——LC 11 移矮边口述,或 LC 15 三处去重。
读教程可选:精读 07「无重复最长子串」与定长窗小节,对照今日复盘标「已默写 / 未默写」。
