面试算法-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;
    }
}
相关推荐
老约家的可汗1 天前
Linux中基础IO
linux·服务器·算法
满怀冰雪1 天前
第29篇-状态压缩DP-当状态很多时如何降维优化
java·算法·动态规划
令狐掌门1 天前
2026华为OD面试题020:日志文件异常检测
算法·leetcode·华为od
炸薯条!1 天前
从零开始学C++(4) --类和对象
开发语言·c++·算法
ayqy贾杰1 天前
Claude Fable 5 提示词泄漏,抓紧学习下
前端·后端·面试
haluhalu.1 天前
prompts.chat:07-few-shot-prompting
人工智能·算法
Jerry1 天前
LeetCode 150. 逆波兰表达式求值
算法
浩瀚地学1 天前
【面试算法笔记】0106-数组-区间和
笔记·算法·面试
Jerry1 天前
LeetCode 1047. 删除字符串中的所有相邻重复项
算法
可编程芯片开发1 天前
基于霍尔传感器和PID控制器的有功功率检测控制系统simulink建模与仿真
算法