LeetCode【3】无重复的最长字串

题目:

思路:

双指针,窗口内字符放入HashSet中。

代码:

java 复制代码
public int lengthOfLongestSubstring(String s) {
        int start = 0, end = 0;
        int max = 0;
        Set<Character> set = new HashSet<>();

        while (start < s.length() && end < s.length() && start <= end) {
            if (set.contains(s.charAt(end))) {
                set.remove(s.charAt(start));
                start ++;
            } else {
                set.add(s.charAt(end));
                max = Math.max(max, end - start + 1);
                end ++;
            }
        }

        return max;
相关推荐
咖啡八杯2 分钟前
GoF设计模式——装饰模式
java·算法·设计模式·装饰器模式
装不满的克莱因瓶4 分钟前
实现矩阵的点积:从数学原理到 NumPy 实战
人工智能·线性代数·算法·机器学习·矩阵·numpy
HZ·湘怡4 分钟前
树 的定义 与 性质
算法·
梦想的颜色4 分钟前
Docker 入门指南:从零开始掌握容器化技术
运维·服务器·vscode·python·算法·docker·云原生
cpp_25017 分钟前
P10109 [GESP202312 六级] 工作沟通
数据结构·c++·算法·题解·洛谷·gesp六级
吴可可1237 分钟前
CAD二次开发中多段线定点分割技巧
算法
ʚ希希ɞ ྀ11 分钟前
全排列 --- 回溯
算法·leetcode·深度优先
玉树临风ives11 分钟前
atcoder ABC 460 题解
数据结构·c++·算法
水无痕simon12 分钟前
9 C语言的基础练习
c语言·开发语言·算法
8Qi817 分钟前
LeetCode 124. 二叉树中的最大路径和(Hard)
算法·leetcode·二叉树·递归