重复字符串 leetcode_求最长不重复字符串

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


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/168891.html原文链接:https://javaforall.net

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


相关推荐

  • Google收购Moto:天使还是魔鬼?

    Google收购Moto:天使还是魔鬼?前几天还在和Moto的朋友说,其实Google最应当收购的是Moto,没想到今天成了现实,说Google应当收购Moto基于几个原因: 1、可以一次性解决专利难题,作为模拟手机时代的霸主,GSM手机时代的千年老二,智能手机时代的佼佼者,Moto的专利储备至少足够应付Apple;

    2022年10月26日
  • git提交代码流程

    git提交代码流程使用git也快有两年了,今天将常用命令总结一下,我描述一个整个的开发流程架构师在gitlab上新建了一个项目,搭好了框架1.我作为开发者之一,首先gitclonehttps://xx用idea打开项目,然后点开idea下面的console,在这里面执行git命令刚进来自然是master分支,然后我们首先创建一个自己的分支并切换过去,命令如下gitcheckout-…

    2022年6月29日
  • pycharm远程运行_pycharm打开远程项目

    pycharm远程运行_pycharm打开远程项目视频见:https://www.bilibili.com/video/av54728208一、计算机系统组成cpu:处理指令(比如点击鼠标)和运算数据内存:存储cpu要处理的数据,从硬盘中读取,读取速度快,处理好后再存入硬盘二、Python介绍Python是时下最流行、最火爆的编程语言之一,具体原因如下:简单、易学,适应人群广泛免费、开源应用领域广泛备注:以下……

    2022年8月28日
  • 数仓建模—数据安全「建议收藏」

    数仓建模—数据安全「建议收藏」数据安全差分隐私差分隐私是用来防范差分攻击的,差分隐私(英语:differentialprivacy)是密码学中的一种手段,旨在提供一种当从统计数据库查询时,最大化数据查询的准确性,同时最大限度减少识别其记录的机会比如有一群人出去聚餐,那么其中某人是否是单身狗就属于差分隐私。为了更形式化地描述差分隐私,我们需要先定义相邻数据集。现给定两个数据集D和D’,若它们有且仅有一条数据不一样,那我们就称此二者为相邻数据集。那么对于一个随机化算法(所谓随机化算法,是指对特定输入,该算法的输出不是固定值,而是服

    2022年5月21日
  • 关闭对话框,OnClose和OnCancel

    关闭对话框,OnClose和OnCancel

    2021年11月28日
  • lldp协议代码阅读_LLDP链路层发现协议详解

    lldp协议代码阅读_LLDP链路层发现协议详解LLDP(链路层发现协议)是定义在802.1ab中的一个二层协议,接入网络的设备可以通过其,将管理地址、设备标识、接口标识等信息发送给同一个局域网络的其它设备。LLDP帧格式封装有LLDPDU的报文称为LLDP帧,其封装格式有两种:EthernetII和SNAP(SubnetworkAccessProtocol,子网访问协议)。EthernetII格式封装的LLDP帧…

    2022年6月1日

发表回复

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

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