力扣top300:3. 无重复字符的最长子串

序号前300中非会员题

3. 无重复字符的最长子串

不定长滑动窗口题目

我们只需要使用哈希表存储窗口内的字符,然后滑动窗口,当出现重复字符时移动左指针即可,

每次遍历要更新结果。

很标准的三步:移入窗口,是否移出,更新结果

cpp 复制代码
class Solution {
public:
    int lengthOfLongestSubstring(string s) {
    int l=s.size();
    int ant=0;
    unordered_map<char,int> m;
    for(int i=0,j=0;i<l;i++)
    {
        m[s[i]]++;
        while(j<=i&&m[s[i]]>1)
        {
            m[s[j]]--;
            j++;
        }
        ant=max(ant,i-j+1);
    }
    return ant;
    }
};
相关推荐
atunet29 分钟前
从算法优化到系统加速的多层级思考7
算法
夜不会漫长1 小时前
数据结构:链表
数据结构·链表
Navigator_Z1 小时前
LeetCode //C - 1156. Swap For Longest Repeated Character Substring
c语言·算法·leetcode
Reart1 小时前
Leetcode 1143.最长公共子序列(720)
后端·算法
无相求码2 小时前
const vs #define:C语言常量定义的差异
c语言·算法
先吃饱再说2 小时前
LeetCode 226. 翻转二叉树
算法
剑锋所指,所向披靡!2 小时前
数据结构之关键路径
数据结构·算法
阿宇的技术日志2 小时前
漏桶、令牌桶、滑动窗口 三限流算法理解
算法·滑动窗口·漏桶·令牌桶
笨笨饿2 小时前
101_详解USB协议
java·jvm·数据结构
J-Tony112 小时前
【Redis】数据结构&&持久化
数据结构·数据库·redis