leetcode3.无重复字符的最长字串

采用滑动窗口方法

cpp 复制代码
class Solution {
public:
    int lengthOfLongestSubstring(string s) {
        int n=s.size();
        if(n==0)
            return 0;
        int result=0;
        unordered_set<char> set;
        set.insert(s[0]);
        for(int i=0,j=0;i<n;i++){
            while(j+1<n&&set.find(s[j+1])==set.end()){
                set.insert(s[j+1]);
                j++;
            }
            result=max(result,j-i+1);
            set.erase(s[i]);
        }
        return result;
    }
};
相关推荐
楼田莉子20 分钟前
C++动态规划算法:斐波那契数列模型
c++·学习·算法·动态规划
1373i26 分钟前
【Python】通俗理解反向传播
深度学习·算法·机器学习
Madison-No731 分钟前
【C++】日期类运算符重载实战
c++·算法
cici1587444 分钟前
基于K-SVD的稀疏编码去噪算法
算法
电力程序小学童1 小时前
基于密集型复杂城市场景下求解无人机三维路径规划的Q-learning算法研究(matlab)
算法·matlab·无人机
小柯J桑_1 小时前
Linux:线程控制
linux·c++·算法
1白天的黑夜11 小时前
栈-1047.删除字符串中的所有相邻重复项-力扣(LeetCode)
c++·leetcode·
im_AMBER1 小时前
Leetcode 18 java
java·算法·leetcode
wzx_Eleven1 小时前
【论文阅读】Towards Privacy-Enhanced and Robust Clustered Federated Learning
论文阅读·人工智能·算法·机器学习·支持向量机·网络安全
旭意1 小时前
C++微基础蓝桥杯之旅9.9-9.12
c++·算法·蓝桥杯