重复字符串 leetcode_无重复字符的最长子串c语言

重复字符串 leetcode_无重复字符的最长子串c语言原题链接给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = “abcabcbb”输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: s = “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: s = “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。 请注意,你的答案必须是 子串 的长度,”pwk

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

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

示例 1:

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

输入: s = "bbbbb"
输出: 1
解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。
示例 3:

输入: s = "pwwkew"
输出: 3
解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。
     请注意,你的答案必须是 子串 的长度,"pwke" 是一个子序列,不是子串。
示例 4:

输入: s = ""
输出: 0
 

提示:

0 <= s.length <= 5 * 104
s 由英文字母、数字、符号和空格组成

题解
双指针

class Solution { 
   
public:
    int lengthOfLongestSubstring(string s) { 
   
        vector<int>index(1 << 8);
        int res = 0;
        for(int i = 0,j = -1;i < s.size();i ++){ 
   
            while(j + 1< s.size() && !index[s[j + 1]])index[s[j + 1]] = 1,j ++;
            res = max(res,j - i + 1);
            index[s[i]] = 0;
        }
        return res;
    }
};
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/169168.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 动态规划:最长回文子串 & 最长回文子序列

    动态规划:最长回文子串 & 最长回文子序列一、题目所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的,比如“a”、“aba”、“abba”。对于一个字符串,其子串是指连续的一段子字符串,而子序列是可以非连续的一段子字符串。最长回文子串和最长回文子序列(LongestPalindromicSubsequence)是指任意一个字符串,它说包含的长度最长的回文子串和回文子序列。例如:字符串“ABCDDCEFA…

    2022年4月29日
  • IntelliJ 2022 激活码【中文破解版】2022.02.08

    (IntelliJ 2022 激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html4KDDGND3CI-eyJsaWNlbnNlSW…

    2022年4月1日
  • Python基础常见面试题总结[通俗易懂]

    Python基础常见面试题总结[通俗易懂]以下是总结的一些常见的Python基础面试题,帮助大家回顾基础知识,了解面试套路。会一直保持更新状态。PS:加粗为需要注意的点。基础知识题1、深拷贝和浅拷贝的区别是什么?深拷贝是将对象本身复制给另一个对象。这意味着如果对对象的副本进行更改时不会影响原对象。浅拷贝是将对象的引用复制给另一个对象。因此,如果我们在副本中进行更改,则会影响原对象。**2、能否解释一下*args和kwar…

    2022年10月21日
  • 【CenterNet】模型文件resnet101-5d3b4d8f.pth下载[通俗易懂]

    【CenterNet】模型文件resnet101-5d3b4d8f.pth下载[通俗易懂]常用到的模型和预训练参数:ctdet_coco_hg.pthctdet_coco_dla_2x.pthctdet_coco_resdcn101.pthctdet_coco_resdcn18.pthmulti_pose_dla_3x.pthdla34-ba72cf86.pthresnet101-5d3b4d8f.pthresnet18-5c106cde.pth点击模型tr6e…

    2022年9月1日
  • Java数组

    Java数组12.Java数组一、什么是数组数组可以理解成一个包含相同类型的有序数字集合也称储存一组数据的空间数组属于引用数据类型int[]a={1,2,3,4,5};集合内的数据称为元素

    2022年7月4日
  • js实现input的赋值

    js实现input的赋值

    2021年11月8日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号