元宝    LeetCode 3.无重复字符的最长子串  Python3实现 这是LeetCode 3无重复字符的最长子串的Python3 实现使用滑动窗口双指针时间复杂度O(n)是最推荐的解法。✅ 思路滑动窗口用两个指针left和right维护一个窗口用一个set记录当前窗口中的字符right向右扩展窗口如果出现重复字符就不断移动left缩小窗口每次更新最大长度✅ Python3 实现标准解法class Solution: def lengthOfLongestSubstring(self, s: str) - int: char_set set() left 0 max_len 0 for right in range(len(s)): # 如果当前字符已存在收缩左边界 while s[right] in char_set: char_set.remove(s[left]) left 1 char_set.add(s[right]) max_len max(max_len, right - left 1) return max_len✅ 示例s abcabcbb print(Solution().lengthOfLongestSubstring(s)) # 输出: 3✅ 复杂度分析时间复杂度O(n)每个字符最多进/出窗口一次空间复杂度O(min(n, 字符集大小))✅ 进阶版本用字典优化如果你追求极致性能可以用dict记录字符最新下标减少while循环class Solution: def lengthOfLongestSubstring(self, s: str) - int: last_seen {} max_len 0 left 0 for right in range(len(s)): if s[right] in last_seen: left max(left, last_seen[s[right]] 1) last_seen[s[right]] right max_len max(max_len, right - left 1) return max_len如果你需要逐行讲解 / 图解过程 / 面试版回答 / 多语言对比我也可以继续帮你

相关新闻

最新新闻

Linux --进程控制

Linux --进程控制

进程的诞生&#xff1a;fork 与 vfork fork 函数初识 在Linux中&#xff0c;fork 是创建新进程的唯一方式&#xff08;从用户态视角看&#xff09;。它通过复制调用进程&#xff08;父进程&#xff09;来生成一个全新的进程&#xff08;子进程&#xff09;。 #include <u…

2026/8/26 16:06:31
The Words in the Dictionary Are Arranged in Order: Understanding Alphabetization

The Words in the Dictionary Are Arranged in Order: Understanding Alphabetization

&#x1f680; TL;DR – Key TakeawaysAlphabetization is the systematic arrangement of words based on the order of letters in the English alphabet (A-Z). It’s not just about memorizing A-B-C—it’s about understanding letter priority, case sensitivity, punc…

2026/8/26 16:06:31
免费开源的 ncmdump:3 步把网易云 NCM 音乐转成通用 MP3

免费开源的 ncmdump:3 步把网易云 NCM 音乐转成通用 MP3

免费开源的 ncmdump&#xff1a;3 步把网易云 NCM 音乐转成通用 MP3 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump ncmdump 是一款免费开源的本地转换小工具&#xff0c;专门把网易云 NCM 加密音乐转成通用 MP3&#xff0c;全程离线…

2026/8/26 16:06:31
Wan2.2-TI2V-5B 720P视频生成本地部署完整指南

Wan2.2-TI2V-5B 720P视频生成本地部署完整指南

Wan2.2-TI2V-5B 720P视频生成本地部署完整指南 【免费下载链接】Wan2.2-TI2V-5B Wan2.2-TI2V-5B是一款开源的先进视频生成模型&#xff0c;基于创新的混合专家架构&#xff08;MoE&#xff09;设计&#xff0c;显著提升了视频生成的质量与效率。该模型支持文本生成视频和图像生…

2026/8/26 16:06:31
为什么越难解决的问题,往往越有价值?

为什么越难解决的问题,往往越有价值?

我们经常会发现一个现象&#xff1a; 越难解决的问题&#xff0c;往往创造的价值越高。 背后当然有很多方面的原因&#xff0c;主要原因之一是这种现象其实是一种幸存者偏差&#xff0c;因为也存在着很多难解决却没有什么价值的问题&#xff0c;这些问题没有人去解决而已。例如…

2026/8/26 16:06:31
live555 生成 Visual Studio 工程

live555 生成 Visual Studio 工程

1&#xff0c;安装Visual Studio 工程 如 Visual Studio 2022&#xff0c;建议安装包含「使用 C 的桌面开发」工作负载&#xff0c;以便后续编译 Live555 相关工程。下载地址&#xff1a;Visual Studio 官网&#xff0c;选择 Community 版本即可免费使用。安装时勾选「使用 C …

2026/8/26 16:01:29