面试算法-141-无重复字符的最长子串

题目

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

子串

的长度。

示例 1:

输入: s = "abcabcbb"

输出: 3

解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。

java 复制代码
class Solution {
    public int lengthOfLongestSubstring(String s) {
        int n = s.length();
        int left = 0;
        int right = 0;
        int maxLen = 0;
        Map<Character, Integer> map = new HashMap<Character, Integer>();
        while (left <= right && right < n) {
            Character chRight = s.charAt(right);
            if (map.get(chRight) == null) {
                map.put(chRight, 1);
                right++;
            } else {
                Character chLeft = s.charAt(left++);
                map.remove(chLeft);
            }

            maxLen = Math.max(maxLen, right - left);
        }
        return maxLen;
    }
}
相关推荐
qyzm3 小时前
Educational Codeforces Round 189 (Rated for Div. 2)
数据结构·python·算法
fox_lht3 小时前
8.3.使用if let和let else实现简明的程序流控制
开发语言·后端·算法·rust
:1213 小时前
java面试基础2
java·开发语言·面试
北顾笙9803 小时前
day28-数据结构力扣
数据结构·算法·leetcode
米粒13 小时前
力扣算法刷题 Day 48(单调栈)
算法·leetcode·职场和发展
我是无敌小恐龙4 小时前
Java SE 零基础入门Day03 数组核心详解(定义+内存+遍历+算法+实战案例)
java·开发语言·数据结构·人工智能·算法·aigc·动态规划
用PPT构建世界4 小时前
PPT插入视频的播放控制:自动播放与点击播放设置!
职场和发展·powerpoint·ppt·ppt模板·职场分享
广州灵眸科技有限公司4 小时前
瑞芯微(EASY EAI)RV1126B rknn-toolkit-lite2使用方法
linux·网络·人工智能·物联网·算法
旖-旎5 小时前
深搜(二叉树剪枝)(3)
数据结构·c++·算法·力扣·剪枝·递归
流年如夢5 小时前
结构体:定义、使用与内存布局
c语言·开发语言·数据结构·c++·算法