力扣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;
    }
};
相关推荐
朝朝辞暮i20 小时前
C++ 第 21 课:struct —— 把一组相关数据打包在一起
开发语言·c++·算法
青梅橘子皮20 小时前
Blue---二分算法(二分查找与二分答案)
算法
长河21 小时前
Java的GC(垃圾回收)中,标记无用对象的核心方法是可达性分析算法
java·jvm·算法
月光船幽幽21 小时前
加性偏移外推提升参数识别可靠性
python·算法
H.莓飛1 天前
【数据结构】队列
linux·数据结构·centos
Ivanqhz1 天前
层归一化、残差、前馈网络与激活函数简述
服务器·数据库·人工智能·深度学习·算法
不会就选b1 天前
算法日常・每日刷题--<动态规划>3
数据结构·算法
H.莓飛1 天前
【数据结构】队列_OJ题
linux·数据结构·centos
-dzk-1 天前
【堆】LC 347.前 K 个高频元素
算法·堆
H.莓飛1 天前
【数据结构】栈_OJ题
linux·数据结构·算法·centos