[力扣 Hot100]Day8 无重复字符的最长子串

题目描述

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

思路

使用双指针构成一个滑动窗口,维护窗口内的字符不重复,逐步右移右指针,当右指针所指元素已经在窗口内时,左指针右移到和右指针所指元素重复的位置的右侧。
每次右移右指针会使窗口增大,右移左指针会使窗口减小,最后返回窗口的历史最大值。

代码

class Solution {
   
public:
    int lengthOfLongestSubstring(string s) {
   
        if(s.length()<2)
            return s.length();
        int maxl=1;
        vector<char> v;
        int left=0,right=left+1;
        v.emplace_back(s[left]);
        while(right<s.length()) {
   
            if(find(v.begin(),v.end(),s[right])==v.end()){
   
                v.emplace_back(s[right]);
                right++;
                maxl=max(right-left,maxl);
            }
            else{
   
                while(s[left]!=s[right]&&left<right){
   
                    v.erase(find(v.begin(),v.end(),s[left]));
                    left++;
                }
                left++;
                right++;
            }
        }
        return maxl;
    }
};

相关推荐

  1. [ Hot100]Day8 重复字符长子

    2024-01-19 18:14:04       60 阅读
  2. Hot100-T8重复字符长子(经典)

    2024-01-19 18:14:04       35 阅读
  3. hot100:08重复字符长子

    2024-01-19 18:14:04       65 阅读
  4. -3. 重复字符长子

    2024-01-19 18:14:04       44 阅读
  5. 3. 重复字符长子

    2024-01-19 18:14:04       28 阅读
  6. 热题100_滑动窗口_3_重复字符长子

    2024-01-19 18:14:04       59 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-19 18:14:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-19 18:14:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-19 18:14:04       82 阅读
  4. Python语言-面向对象

    2024-01-19 18:14:04       91 阅读

热门阅读

  1. 【力扣每日一题】力扣2171拿出最少数目的魔法豆

    2024-01-19 18:14:04       60 阅读
  2. leetcode—和为K的子数组

    2024-01-19 18:14:04       55 阅读
  3. 问题解决方案

    2024-01-19 18:14:04       59 阅读
  4. npm install 太慢?解决方法

    2024-01-19 18:14:04       60 阅读
  5. git merge 和 git pull的区别是什么

    2024-01-19 18:14:04       48 阅读
  6. Github Copilot 的使用方法和快捷键

    2024-01-19 18:14:04       71 阅读
  7. 公司OA办公系统使用阿里云服务器怎么选配置?

    2024-01-19 18:14:04       60 阅读
  8. Linux常用命令

    2024-01-19 18:14:04       47 阅读
  9. Spring Boot3 系列:Spring Boot3 跨域配置 Cors

    2024-01-19 18:14:04       35 阅读
  10. 《设计模式的艺术》笔记 - 享元模式

    2024-01-19 18:14:04       49 阅读
  11. C语言中各变量声明及注意事项

    2024-01-19 18:14:04       56 阅读
  12. pytorch学习(一)、tensorboard和torchvision

    2024-01-19 18:14:04       51 阅读