LeetCode Hot100 438.找到字符串中所有字母异位词

题目

给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。

异位词 指由相同字母重排列形成的字符串(包括相同的字符串)。

代码

class Solution {public List<Integer> findAnagrams(String s, String p) {int n = s.length(), m = p.length();List<Integer> res = new ArrayList<>();if (n < m)return res;int[] pCnt = new int[26];int[] sCnt = new int[26];for (int i = 0; i < m; i++) {pCnt[p.charAt(i) - 'a']++;sCnt[s.charAt(i) - 'a']++;}if (Arrays.equals(sCnt, pCnt)) {res.add(0);}for (int i = m; i < n; i++) {sCnt[s.charAt(i - m) - 'a']--;sCnt[s.charAt(i) - 'a']++;if(Arrays.equals(sCnt, pCnt)){res.add(i - m + 1);}}return res;}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/186724.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

位图和布隆过滤器(C++)

位图和布隆过滤器 一、位图1. 引入2. 概念3. 代码实现setreset完整代码 4. 位图的应用 二、布隆过滤器1. 引入2. 概念3. 逻辑结构4. 特点5. 代码实现6. 布隆过滤器的应用 三、哈希切割 一、位图 1. 引入 当面对海量数据需要处理时&#xff0c;内存不足以加载这些数据&#xf…

The Sandbox 携手 Sandsoft,与 Nuqtah 合作推动沙特阿拉伯的 Web3 发展

新的合作伙伴关系将增强创作者的能力&#xff0c;促进区块链生态系统的包容性。 The Sandbox 及其合作伙伴 Sandsoft 是移动游戏开发商和发行商&#xff0c;也是 AAA 人才驱动的投资者&#xff0c;他们非常高兴地宣布与 Nuqtah 建立新的合作伙伴关系&#xff0c;Nuqtah 是中东和…

OSI模型及其主要协议?

OSI模型是一个开放式系统互联参考模型&#xff0c;该模型人为的定义了七层结构。 由下至上及其主要作用为&#xff1a; 物理层&#xff1a;OSI的物理层规定了通信端点之间的机械特性、电气特性、功能特性以及过程特性&#xff0c;该层为上层协议提供了一个传输数据的物理媒体…

numpy模块安装方法

https://www.bilibili.com/video/BV1qN411R7V2/?spm_id_from333.337.search-card.all.click&vd_sourcefb8dcae0aee3f1aab700c21099045395

Linux:Ubuntu系统安装软件

本次以安装vim为例 sudo apt-get remove vim //卸载vim sudo apt-get install vim //安装vim sudo apt-cache show vim //获取vim软件信息安装时间较长。 安装完成后&#xff0c;执行下第三条指令&#xff0c;测试下是否安装成功即可。

Metasploit框架(1), 简介, 主要模块, 目录, 基本命令, 入侵案例

Metasploit框架(1), 简介, 主要模块, 目录, 基本命令, 入侵案例 Metasploit是一款开源的 安全漏洞 检测工具&#xff0c;可以帮助安全和IT专业人士识别安全性问题&#xff0c;验证漏洞的缓解措施&#xff0c;并管理专家驱动的安全性进行评估&#xff0c;提供真正的 安全风险 情…

在gazebo里搭建一个livox mid360 + 惯导仿真平台测试 FAST-LIO2

在gazebo里搭建一个livox mid360 惯导仿真平台测试 FAST-LIO2 前言立方体平台加入 livox mid360 激光雷达加入IMU模块调整底盘大小 并设计调用接口测试 Fast-Lio2 前言 livox mid360 在官网一直没有货&#xff0c;在gazebo里可以仿真该雷达形式的点云。 但是其只发布雷达的数…

Spire.Office 8.11.2 for NET fix Crack

内容摘自来自互联网------或者SDK官方本身手册 Spire.Doc for .NET A professional Word .NET library designed to create, read, write, convert and print Word document files in any .NET ( C#, VB.NET, ASP.NET, .NET Core, Xamarin ) application with fast and high qu…

Aurora8B10B(一) 从IP配置界面学习Aurora

一. 简介 哈喽&#xff0c;大家好&#xff0c;好久没有给大家写FPGA技术的文章&#xff0c;是不是已经忘记我是做FPGA的啦&#xff0c;O(∩_∩)O哈哈~。 这里将会给大家分享我学习到的第一个高速接口Aurora8B10B&#xff0c;有点复杂&#xff0c;但不是特别复杂&#xff0c;对…

【ASP.NET CORE】EntityFrameworkCore 数据迁移

如果数据库中已经有数据结构&#xff0c;可以使用Scaffold-DbContext来同步model&#xff0c;-connection是字符串&#xff0c;-outputdir 是输入文件夹名称&#xff0c;举例的脚本使用的是sqlserver数据库 通用 Scaffold-DbContext -Connection "DatabaseAddress;Data …

自定义一个response、在响应头中放数据、函数和方法的区别、开启media访问、页面静态化

【1】自定义一个response # 类似JsonResponse函数的方法class JS(HttpResponse):def __init__(self,data):res json.dumps(data)return super().__init__(res) 【2】在响应头中放数据的方式 1、Httpresponse 方式一&#xff1a;直接传headers参数&#xff0c;header默认是一…

积分表一(高等数学同济版中所有的积分公式)

文章目录 含有 a x b axb axb的积分含有 a x b \sqrt{axb} axb ​ 的积分含有 x 2 a x^2 \pm a x2a 的积分含有 a x 2 b ax^2 b ax2b 的积分含有 a x 2 b x c ax^2bxc ax2bxc 的积分含有 x 2 a 2 ( a > 0 ) \sqrt{x^2a^2} \quad (a>0) x2a2 ​(a>0) 的积分含有…

使用vscode的remotessh插件远程连接的时候被要求重复输入密码

问题描述&#xff1a; 需要远程连接服务器&#xff0c;使用ssh&#xff0c;我用到的是vscode里面的remotessh插件。配置好config以后 HostHostNameUserPortIdentifyFile进入到了vscode的密码登录界面&#xff0c;但是一直被要求循环输入密码&#xff0c;很奇怪&#xff0c;去…

论文阅读——DINOv

首先是关于给了提示然后做分割的一些方法的总结&#xff1a; 左边一列是prompt类型&#xff0c;右边一列是使用各个类型的prompt的模型。这些模型有分为两大类&#xff1a;Generic和Refer&#xff0c;通用分割和参考分割。Generic seg 是分割和提示语义概念一样的所有的物体&am…

LLM之Agent(二):BabyAGI的详细教程

BabyAGI是一个 AI 支持的任务管理系统&#xff08;Python脚本&#xff09;&#xff0c;使用 OpenAI 和 Pinecone API 创建, 优先级排序和执行任务。该系统背后的主要思想是基于先前任务的结果和预定义的目标创建任务。脚本然后使用 OpenAI 的自然语言处理&#xff08;NLP&#…

leetCode 93.复原 IP 地址 + 回溯算法 + 图解 + 笔记

93. 复原 IP 地址 - 力扣&#xff08;LeetCode&#xff09; 有效 IP 地址 正好由四个整数&#xff08;每个整数位于 0 到 255 之间组成&#xff0c;且不能含有前导 0&#xff09;&#xff0c;整数之间用 . 分隔。 例如&#xff1a;"0.1.2.201" 和 "192.168.1.1…

CS 2520nonono

CS 2520nonono WeChat&#xff1a;yj4399_​​​​​ Sina Visitor System High-level●3 Congestion Control Algorithms:○TCP Reno:■additive increase, multiplicative decrease function to adjust window size for every RTTuntil a packet loss is detected○TCP CUBI…

编程的重要性及解决技术难题的方法

看到这个话题之后&#xff0c;出于好奇&#xff0c;使用某chat&#xff0c;输入相应主题得到的一篇文章&#xff0c;分享给大家。 PS&#xff1a;现在不同版本的chat和其快速更新升级也可以说是编程的结果&#xff0c;其重要性和发展历程也反映了编程的重要性。 一、编程的重要…

关于java agent

关于java agent技术,可以看看这个文章, 聊聊JavaAgent - 知乎

详解ClickHouse的ReplaceMergeTree

区别于MergeTree表引擎&#xff0c;ReplacingMergeTree删除重复数据时是通过相同的分区值&#xff08;ORDER BY的值&#xff09; 数据去重发生在后台合并数据时&#xff0c;后台合并数据是随机的&#xff0c;所以有时会有一些没处理的数据&#xff0c;可以通过OPTIMIZI来手动合…