【重点】【滑动窗口】3. 无重复字符的最长子串

news/2024/5/20 8:06:20 标签: 滑动窗口

题目
参考《算法小抄》重的解法,重点理解!!!

class Solution {
    public int lengthOfLongestSubstring(String s) {
        if (s.length() < 2) {
            return s.length();
        }
        char[] array = s.toCharArray();
        int left = 0, right = 0, res = 0;
        int[] count = new int[256];
        while (right < array.length) {
            char cur = array[right];
            ++right;
            ++count[cur];
            while (count[cur] > 1) {
                char d = array[left];
                ++left;
                --count[d];
            }

            res = Math.max(res, right - left);
        }

        return res;
    }
}

http://www.niftyadmin.cn/n/5242557.html

相关文章

Spring的配置文件,如何配置端口号,,properties,yml获取配置项等方法,外观模式及其优缺点,日志代表的信息

目录 一、回顾 二.如何配置端口号 配置文件&#xff0c;最重要的目的:解决硬编码问题-代码写死 1.常见配置项 yml获取配置项 多次获取配置项&#xff08;yml会对我们的参数情况&#xff0c;进行的一定类型转换比如数字10&#xff0c;转换成“10”&#xff09; null:使用k…

农用烘干机市场分析:我国市场规模为190亿元

农用烘干机是运用在农业烘干领域的传统干燥设备之一&#xff0c;主要是为了农副产品直接使用或满足进一步加工的需要。农用烘干机具有操作弹性大、适应性强、处理能力大、设备运转可靠等优点&#xff0c;能大幅度提高农副产品烘干效率。现阶段&#xff0c;我国农用烘干机的市场…

「Verilog学习笔记」状态机-非重叠的序列检测

专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点&#xff0c;刷题网站用的是牛客网 根据题意 定义一个五位的中间变量lock 每次始终上升沿来临时 判断当前寄存器的低四位新数据是否等于10111 如果等于 则下一时刻lock应被清空 否则lock等于当前的lock的低四…

Linux 多线程(C语言) 备查

基础 1&#xff09;线程在运行态和就绪态不停的切换。 2&#xff09;每个线程都有自己的栈区和寄存器 1&#xff09;进程是资源分配的最小单位&#xff0c;线程是操作系统调度执行的最小单位 2&#xff09;线程的上下文切换的速度比进程快得多 3&#xff09;从应用程序A中启用应…

改善男性生理健康,缓解前列腺问题

前列腺是男性生殖系统中非常重要的一部分&#xff0c;它对男性的生理健康都着至关重要的作用。但是随着年龄的增长&#xff0c;前列腺问题也越来越普遍&#xff0c;给男性带来了很大的困扰。前列宝是Mission Hill推出的一款番茄红素多效复合胶囊&#xff0c;主要针对男性前列腺…

AOC computer monitor

【窗口增亮】关闭就没掉了

ubuntu 查看文件夹内文件数目

主要是3个命令的组合ls、grep、wc 当前目录下文件的个数&#xff08;不含子文件夹&#xff09;: ls -l | grep "^-" | wc -l 当前目录下文件的个数&#xff08;含子文件夹里的&#xff09;&#xff0c;注意&#xff1a;R&#xff0c;代表子目录: ls -lR | grep &…

第二十一章总结

一、网络通信&#xff1a; 1.网络程序设计基础&#xff1a;网络程序设计编写的是与其他计算机进行通信的程序。 1.1局域网与互联网&#xff1a;为了实现两台计算机的通信&#xff0c;必须用一个网络线路连接两台计算机 2.网络协议&#xff1a;网络协议规定了计算机之间连接的…