力扣HOT100——无重复字符的最长子字符串

给定一个字符串 s ,请你找出其中不含有重复字符的 最长 子串 的长度。

示例 1:

复制代码
输入: s = "abcabcbb"
输出: 3 
解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。

思路:

滑动窗口。遍历整个字符串,每遍历到一个新的字符,则以它起点结合unordered_map来判断最长无重复的字串是多少,然后更答案maxlength。

cpp 复制代码
class Solution {
public:
    int lengthOfLongestSubstring(string s) {
        int maxlenth=0;
        
        for(int i=0;i<s.size();i++)
        {
            int j=i;
            unordered_map<char,int> mp;
            while(j<s.size()&&mp[s[j]]==0)
            {
                mp[s[j]]++;
                j++;
            }
            maxlenth=max(maxlenth,j-i);
                mp.erase(s[i]);
            
        }
        return maxlenth;
    }
};
相关推荐
知无不研9 小时前
lambda表达式的使用(3)
开发语言·c++·lambda
半夏微凉半夏殇10 小时前
x11与weston对比,优先选哪个
leetcode·均值算法·eclipse
2501_9065651210 小时前
数学之美探究
算法
oier_Asad.Chen10 小时前
【洛谷题解/AcWing题解/OI学习笔记】洛谷P2868【USACO07DEC】Sightseeing Cows G(01分数规划求最大比率)
算法·图论·spfa·二分·负环
C++ 老炮儿的技术栈11 小时前
基于Qt实现轻量化本地音乐播放器
开发语言·c++·qt·c·播放器·音乐
leisoo809712 小时前
财报数据怎么排雷本地化Python构建财务异常预警系统
人工智能·python·算法
qz_Serene13 小时前
C++:类和对象(上)
开发语言·c++
luj_176814 小时前
塔防牌:策略与卡牌的智慧碰撞
服务器·c语言·开发语言·经验分享·算法
wuyk55514 小时前
3.链表:用指针串联的动态数据结构
c语言·开发语言·数据结构·链表
郝学胜-神的一滴14 小时前
干货版《算法导论》17:二叉树核心原理、遍历逻辑与高阶实操全解
数据结构·c++·python·算法·计算机·编程