当前位置: 首页 > news >正文

【LeetCode】【3】无重复字符的最长子串(1113字)

文章目录

    • @[toc]
      • 题目描述
      • 样例输入输出与解释
        • 样例1
        • 样例2
        • 样例3
      • 提示
      • Python实现
        • 滑动窗口

因上努力

个人主页:丷从心·

系列专栏:LeetCode

刷题指南:LeetCode刷题指南

果上随缘


题目描述

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

样例输入输出与解释

样例1
  • 输入:s = "abcabcbb"
  • 输出:3
  • 解释:因为无重复字符的最长子串是"abc",所以其长度为3
样例2
  • 输入:s = "bbbbb"
  • 输出:1
  • 解释:因为无重复字符的最长子串是"b",所以其长度为1
样例3
  • 输入:s = "pwwkew"
  • 输出:3
  • 解释
    • 因为无重复字符的最长子串是"wke",所以其长度为3
    • 请注意,你的答案必须是子串的长度,"pwke"是一个子序列,不是子串

提示

  • 0 <= s.length <= 5 * 10^4
  • s由英文字母、数字、符号和空格组成

Python实现

滑动窗口
class Solution:def lengthOfLongestSubstring(self, s: str) -> int:char_set = set()n = len(s)end, res = 0, 0for start in range(n):if start != 0:# 左指针向右移动一格, 移除一个字符char_set.remove(s[start - 1])while end < n and s[end] not in char_set:# 不断地移动右指针char_set.add(s[end])end += 1res = max(res, end - start)return res

http://www.lryc.cn/news/350899.html

相关文章:

  • 溪谷联运SDK功能全面解析
  • Vitis HLS 学习笔记--控制驱动TLP - Dataflow视图
  • 蓝桥杯物联网竞赛_STM32L071KBU6_关于sizo of函数产生的BUG
  • Wpf 使用 Prism 实战开发Day22
  • 遍历列表
  • 创建vue工程、Vue项目的目录结构、Vue项目-启动、API风格
  • 为了更全面地分析开发人员容易被骗的原因和提供更加深入的防范措施
  • 虹科Pico汽车示波器 | 免拆诊断案例 | 2020款奔驰G350车行驶中急加速时发动机抖动
  • 大模型落地竞逐,云计算大厂“百舸争流”
  • 物体检测算法-R-CNN,SSD,YOLO
  • 区块链开发:区块链软件开发包装相关解析
  • 一个月速刷leetcodeHOT100 day07 轮转数组 除自身以外的乘积 找到字符串中所有字母异位词
  • Plotly数据可视化宝典
  • 由于找不到mfc140u.dll,无法继续执行代码如何解决
  • 卷积神经网络(CNN)详细介绍及其原理详解
  • kotlin基础之空指针检查、字符串表达式、函数默认值
  • 【力扣一轮】字符串异位 数组并集
  • 完美解决flex布局换行后最后一行不能和保持和满行的间距一致,或者左对齐的尴尬情景
  • 面试准备-项目【面试准备】
  • 迭代器 增强for循环
  • Ubuntu系统版本查看办法
  • HTML5 SVG技术应用
  • hcia datacom学习(10):交换机基础
  • 参考文献交叉引用两个文献,逗号隔开
  • Linux多线程系列三: 生产者消费者模型,信号量使用,基于阻塞队列和环形队列的这两种生产者消费者代码的实现
  • Mongodb介绍及springboot集成增删改查
  • JAVA 中 HTTP 基本认证(Basic Authentication)
  • 【Flutter】 webview请求权限问题
  • rocketmq 学习二 基本概念
  • C++初阶学习第十弹——探索STL奥秘(五)——深入讲解vector的迭代器失效问题