76.最小覆盖子串
给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 “” 。
注意:
对于 t 中重复字符,我们寻找的子字符串中该字符数量必须不少于 t 中该字符数量。
如果 s 中存在这样的子串,我们保证它是唯一的答案。
class Solution {public String minWindow(String s, String t) {String minstr = "";Map<Character,Integer> need = new HashMap<>();Map<Character,Integer> win = new HashMap<>();for(char c : t.toCharArray()){need.put(c,need.getOrDefault(c,0)+1);}int left = 0, right = 0, tagl = 0;int size = 0, minLen = Integer.MAX_VALUE;while(right < s.length()){char cr = s.charAt(right);right++;if(need.containsKey(cr)){win.put(cr,win.getOrDefault(cr,0)+1);//这里使用==就会有bugif(win.get(cr).equals(need.get(cr))){size++;}}while(size == need.size()){//因为right已经+1了if(right - left < minLen){minLen = right - left;tagl = left;}char cl = s.charAt(left);left++;if(need.containsKey(cl)){//这里使用==就会有bugif(win.get(cl).equals(need.get(cl)))size--;win.put(cl,win.get(cl)-1);}}}return minLen == Integer.MAX_VALUE ? "":s.substring(tagl,tagl+minLen);}
}
相关文章:
76.最小覆盖子串
给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 “” 。 注意: 对于 t 中重复字符,我们寻找的子字符串中该字符数量必须不少于 t 中该字符数量。 如果 s 中存…...
深度学习算法informer(时序预测)(三)(Encoder)
一、EncoderLayer架构如图(不改变输入形状) 二、ConvLayer架构如图(输入形状中特征维度减半) 三、Encoder整体 包括三部分 1. 多层EncoderLayer 2. 多层ConvLayer 3. 层归一化 代码如下 class AttentionLayer(nn.Module):de…...
HTML和CSS基础(一)
前言 HTML(HyperText Markup Language)是一种用于创建网页的标准标记语言。它由各种标签组成,这些标签定义了网页的结构和内容。HTML的早期形式诞生于1989年,由CERN的物理学家Tim Berners-Lee发明,最初用于在科学家之…...
低代码平台教你两步把SQL直接转换为RESTful API
文章目录 前言一、简介1. 项目亮点2. 技术栈3. 核心功能4. 数据库设计二、搭建教程1. 目录结构2. 下载2.1 下载2.2 上传2.3 解压3. 配置3.1 创建并切换数据库3.2 执行sql文件3.3 修改配置文件4. 启动/停止4.1 启动4.2 停止4.3 重启5. 浏览器访问三、配置教程1. 数据源配置1.1 创…...
JavaWeb阶段学习知识点(二)
登录校验和JWT令牌实现 JWT使用方式 创建一个springboot项目,pom.xml引入jwt依赖 <dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>0.9.1</version></dependency><!-- 针对jdk17或…...
数据结构【二叉树】
前言 我们在前面学习了使用数组来实现二叉树,但是数组实现二叉树仅适用于完全二叉树(非完全二叉树会有空间浪费),所以我们本章讲解的是链式二叉树,但由于学习二叉树的操作需要有一颗树,才能学习相关的基本…...
Vue P17-54
18、计算属性 示例:实现姓名的联动效果 可以用插值语法、method {{func()}} 这里必须有 ()表示返回值 在事件处理中,click“func1” 有没有无所谓 computed的计算属性和data中的属性都在vm中,但vm._data里只有后者…...
【自动驾驶】从零开始做自动驾驶小车
文章目录 自动驾驶小车系统、运动底盘的运动学分析和串口通信控制电机PID控制IMU初始化与陀螺仪零点漂移ubuntu基础教程ROS基础键盘控制巡线(雷达避障)雷达跟随视觉跟踪2D建图、2D导航3D建图、3D导航纯视觉建图导航语音控制KCF跟随自主建图建图与导航多机编队WEB浏览器显示摄像…...
一文让你彻底搞懂什么是VR、AR、AV、MR
随着科技的飞速发展,现实世界与虚拟世界的界限变得越来越模糊。各种与现实增强相关的技术如雨后春笋般涌现,令人眼花缭乱。本文将为你详细解读四种常见的现实增强技术:虚拟现实(VR)、增强现实(AR࿰…...
Python设计模式 - 简单工厂模式
定义 简单工厂模式是一种创建型设计模式,它通过一个工厂类来创建对象,而不是通过客户端直接实例化对象。 结构 工厂类(Factory):负责创建对象的实例。工厂类通常包含一个方法,根据输入参数的不同创建并返…...
L55--- 257.二叉树的所有路径(深搜)---Java版
1.题目描述 2.思路 (1)因为是求二叉树的所有路径 (2)然后是带固定格式的 所以我们要把每个节点的整数数值换成字符串数值 (3)首先先考虑根节点,也就是要满足节点不为空 返回递归的形式dfs(根节…...
智慧园区解决方案PPT(53页)
## 1.1 智慧园区背景及需求分析 - 智慧园区的发展历程包括园区规划、经济、产业、企业、管理、理念的转变,强调管理模式创新,关注业务综合化、管理智慧化等发展。 ## 1.2 国家对智慧园区发展的政策 - 涉及多个国家部门,如工信部、住建部、…...
Windows安装MySQL(8.0.37)
安装:https://blog.csdn.net/XLBYYDS/article/details/139711682 注意点: (1)必须安装到C盘系统盘,否则执行 net start mysql 启动服务时,可能会启动失败。 (2)如果安装时出现 The…...
永磁同步电机驱动死区补偿
1 死区效应及补偿 1. 1 死区效应 在本文的电机控制嵌入式系统中,逆变器为三 相电压型桥式逆变电路,如图 1 所示。 在理想状态 下,上桥臂和下桥臂的控制信号满足互补通断原则, 即上桥臂开通时,下桥臂关断,反之亦然。 而在实际 应用中,开关管的通断需要一定的开通时…...
智能体合集
海外版coze: 前端代码助手 后端代码助手: 前端代码助手:...
智能农业管理系统设计
一、引言 随着物联网、云计算和大数据技术的快速发展,智能农业管理系统成为提高农业生产效率、优化资源配置、降低环境污染的重要手段。本设计旨在构建一个集数据采集、传输、处理、分析于一体的智能农业管理系统,为农业生产提供全方位、精准化的服务。 …...
Matlab的Simulink系统仿真(simulink调用m函数)
这几天要用Simulink做一个小东西,所以在网上现学现卖,加油! 起初的入门是看这篇文章MATLAB 之 Simulink 操作基础和系统仿真模型的建立_matlab仿真模型搭建-CSDN博客 写的很不错 后面我想在simulink中调用m文件 在 Simulink 中调用 MATLA…...
C语言中操作符详解(一)
众所周知,在我们的C语言中有着各式各样的操作符,并且在此之前呢,我们已经认识并运用了许许多多的操作符,都是诸君的老朋友了昂 操作符作为我们使用C语言的一个非常非常非常重要的工具,诸君一定要加以重视,…...
【论文阅读】Multi-Camera Unified Pre-Training via 3D Scene Reconstruction
论文链接 代码链接 多摄像头三维感知已成为自动驾驶领域的一个重要研究领域,为基于激光雷达的解决方案提供了一种可行且具有成本效益的替代方案。具有成本效益的解决方案。现有的多摄像头算法主要依赖于单目 2D 预训练。然而,单目 2D 预训练忽略了多摄像…...
深入了解NumPy的原理与使用
文章目录 一、引言二、NumPy的原理1. 多维数组对象2. 广播(Broadcasting)3. 内存效率和速度 三、NumPy的使用1. 创建数组2. 数组操作3. 广播(Broadcasting)示例 四、总结 一、引言 在Python的数据科学和科学计算领域,…...
CyberChef:数据处理的万能工具箱
CyberChef:数据处理的万能工具箱 【免费下载链接】CyberChef The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis 项目地址: https://gitcode.com/GitHub_Trending/cy/CyberChef 数据处理的困境与破局之道 你…...
解决PARSEC 3.0安装中的常见问题:从gcc缺失到native输入配置
解决PARSEC 3.0安装中的常见问题:从gcc缺失到native输入配置 在性能测试和基准评估领域,PARSEC 3.0作为一套广泛使用的多线程基准测试套件,为研究人员和开发者提供了评估系统性能的强大工具。然而,在实际安装和配置过程中&#x…...
gInk:重新定义屏幕标注体验的轻量化协作工具
gInk:重新定义屏幕标注体验的轻量化协作工具 【免费下载链接】gInk An easy to use on-screen annotation software inspired by Epic Pen. 项目地址: https://gitcode.com/gh_mirrors/gi/gInk 远程会议中,当产品经理试图在共享屏幕上圈出设计稿的…...
2025平航杯电子取证实战:从木马溯源到服务器渗透的完整链条分析
1. 木马溯源:从可疑流量到攻击者定位 2025年4月,杭州滨江警方接到一起特殊报案。市民刘晓倩(化名倩倩)发现自己的手机出现异常发热、电量消耗过快等现象,怀疑设备被人监控。这个看似普通的个人隐私案件,最终…...
EmbeddingGemma-300M效果实测:Ollama部署下的中文语义相似度
EmbeddingGemma-300M效果实测:Ollama部署下的中文语义相似度 1. 轻量级嵌入模型的实用价值 在当今信息爆炸的时代,文本数据的处理和分析变得愈发重要。无论是构建智能搜索系统、实现文档聚类,还是开发个性化推荐引擎,文本嵌入技…...
为什么Snap卸载Docker总卡在快照?揭秘自动备份机制与3种强制中断方案
为什么Snap卸载Docker总卡在快照?深度解析与实战解决方案 当你尝试卸载通过Snap安装的Docker时,是否遇到过进度条卡在"Save data of snap docker in automatic snapshot set #3"的情况?这种看似简单的卸载操作背后,隐藏…...
2026企业AI落地必看:避开3大坑,让你的智能体真正帮你赚钱!收藏这份实战指南
本文深入探讨了企业AI智能体落地的现实难题,包括数据基础薄弱、单体智能体处理复杂流程能力不足以及人机协同缺失三大痛点。作者通过分析30企业案例,提出了针对性的解决方案:建立RAG架构和OCR数据清洗以夯实数据基础;采用多智能体…...
PDF-Parser-1.0效果实测:中文识别超99%,表格公式完美提取
PDF-Parser-1.0效果实测:中文识别超99%,表格公式完美提取 1. 开篇实测体验 当我第一次使用PDF-Parser-1.0处理一份15页的技术文档时,结果让我感到惊讶。这份文档包含复杂的中英文混排内容、3个跨页表格和5个数学公式,传统OCR工具…...
Omni-Vision Sanctuary 集成 MySQL 数据库:自动化图像元数据管理与检索方案
Omni-Vision Sanctuary 集成 MySQL 数据库:自动化图像元数据管理与检索方案 1. 场景痛点与解决方案 数字内容创作领域正面临一个普遍挑战:随着AI生成图像的爆发式增长,如何高效管理海量图片资产成为棘手问题。某电商设计团队负责人曾向我们…...
Ostrakon-VL终端部署案例:单卡3090实现12路摄像头并发扫描
Ostrakon-VL终端部署案例:单卡3090实现12路摄像头并发扫描 1. 项目背景与核心价值 在零售与餐饮行业,传统的图像识别系统往往面临两个痛点:一是工业级UI操作复杂,员工培训成本高;二是多路摄像头并发处理需要昂贵的高…...
