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

【算法专题突破】滑动窗口 - 找到字符串中所有字母异位词(14)

目录

1. 题目解析

2. 算法原理

3. 代码编写

写在最后:


1. 题目解析

题目链接:438. 找到字符串中所有字母异位词 - 力扣(Leetcode)

 这道题很好理解,就是找出从不同位置开始的所有异位词。

2. 算法原理

那我们该如何快速判断是否是异位词呢?

因为异位词的字符种类和数量是一样的,用哈希表就可以很容易的比较。

思路和代码都还是比较简单的:

我们直接维护一个定长的窗口,

然后通过把字符插入哈希计数,然后每走一步判断是否是异位词即可。

3. 代码编写

class Solution {
public:vector<int> findAnagrams(string s, string p) {unordered_map<char, int> win;unordered_map<char, int> cmp;vector<int> ans;for(auto e : p) cmp[e]++;int left = 0, right = 0;while(right < s.size()) {win[s[right++]]++;if(right - left > p.size()) {win[s[left]]--;if(win[s[left]] == 0) win.erase(s[left]);left++;}if(win == cmp) ans.push_back(left);}return ans;}
};

写在最后:

以上就是本篇文章的内容了,感谢你的阅读。

如果感到有所收获的话可以给博主点一个哦。

如果文章内容有遗漏或者错误的地方欢迎私信博主或者在评论区指出~

相关文章:

【算法专题突破】滑动窗口 - 找到字符串中所有字母异位词(14)

目录 1. 题目解析 2. 算法原理 3. 代码编写 写在最后&#xff1a; 1. 题目解析 题目链接&#xff1a;438. 找到字符串中所有字母异位词 - 力扣&#xff08;Leetcode&#xff09; 这道题很好理解&#xff0c;就是找出从不同位置开始的所有异位词。 2. 算法原理 那我们该如…...

C++生成-1到1的随机数

目录 一、方法一1、主要函数2、示例代码 二、方法二1、方法概述2、参考文献3、示例代码 三、方法三1、参考链接2、示例代码 本文由CSDN点云侠原创&#xff0c;原文链接。如果你不是在点云侠的博客中看到该文章&#xff0c;那么此处便是不要脸的爬虫。 一、方法一 1、主要函数…...

React-Hooks 和 React-Redux

注&#xff1a;Redux最新用法参考 个人React专栏 react 初级学习 Hooks基本介绍------------------------- Hooks&#xff1a;钩子、钓钩、钩住&#xff0c; Hook 就是一个特殊的函数&#xff0c;让你在函数组件中获取状态等 React 特性 &#xff0c;是 React v16.8 中的新增功…...

虚拟机下载与Ubuntu安装

下载VMware 进入官网资源 -> 产品下载 -> Desktop & End-User Computing选择 VMware Workstation Pro 这一栏&#xff0c;点击右边的下载产品&#xff0c;跳到新页面选择版本&#xff08;我选的是 16.0&#xff09;&#xff0c;然后点击下面对应系统的转至下载&…...

【小数点】C#使用Math.Round方法保留指定小数点位数,并且整数也同样保持统一的2位

2023年&#xff0c;第38周。给自己一个目标&#xff0c;然后坚持总会有收货&#xff0c;不信你试试&#xff01; 在实际开发项目中&#xff0c;特别是涉及金额之类的字段&#xff0c;一般都会用到小数&#xff0c;有些是保留1、2、3小数点。 本篇文章主要简单讲讲&#xff0c;如…...

Android多种方法获取系统属性

这里使用获取rga版本为例 1&#xff0c;使用sh脚本方法 sh的编写 echo $(getprop vendor.rga_api.version) 其中&#xff0c;vendor.rga_api.version是关键字 相关方法也有两种&#xff0c;一种是从sh脚本读取流&#xff0c;一种是指令很少的&#xff0c;直接读取字符串化…...

密码学【一】

前言 在区块链的整个体系中大量使用了密码学算法&#xff0c;比如用于 PoW 的哈希算法&#xff0c;用于完整性验证的 Merkle Tree&#xff0c;用于交易签名与验证的数字签名算法&#xff0c;用于隐私保护的零知识证明等等。 可以说密码学是保证区块链安全的基石&#xff0c;而区…...

企业如何选择舆情优化处置公司?

随着互联网的发展成熟&#xff0c;网络上的信息量已经非常之巨大&#xff0c;网络上的海量信息有对企业有利的&#xff0c;其实也有一些企业经营不利的&#xff0c;让不利的信息下沉&#xff0c;让有利的信息排上搜索首页&#xff0c;这就是舆情优化的简单表述。 对于大中型企业…...

HBASE知识点

HBASE是什么&#xff1f; 高可靠、高性能、面向列、可伸缩、实时读写的分布式数据库。利用HDFS作为其文件存储系统&#xff0c;利用MapReduce来处理HBase中的海量数据。利用Zookeeper作为其分布式协同服务。用于存储非结构化和半结构化的松散数据。 HBase数据模型 RowKey: 唯…...

Python新手入门

文章目录 概要python代码运行结果小结 概要 以下内容为python各种输出语句的语法&#xff01; python代码 # 标准化输出 print("这是标准化输出&#xff01;")# 格式化输出 print("这是第1种%s"%"格式化输出&#xff01;") print("这是第…...

vite + react + typescript + uni-app + node 开发一个生态系统

简介 使用 vite react typescript uni-app node 来开发一个简易的生态系统案例&#xff0c;包含 APP&#xff0c;H5&#xff0c;微信小程序&#xff0c;控制台&#xff0c;服务端 开发 admin 技术栈&#xff1a;vite react typescript初始化控制台项目选择自定义预设…...

python pdf文件转图片

在Python中&#xff0c;有很多的第三方库可以用于PDF文件的转换&#xff0c;比如PyPDF2和pdf2image。 其中PyPDF2可以从PDF文件中提取每一页并将其保存为图像文件&#xff0c;需要安装Pillow库。 pdf2image则直接将PDF文件转换为PNG或JPEG图像文件&#xff0c;可以使用ImageM…...

牛客: BM7 链表中环的入口结点

牛客: BM7 链表中环的入口结点 文章目录 牛客: BM7 链表中环的入口结点题目描述题解思路题解代码 题目描述 题解思路 用一个哈希表存储链表节点,遍历链表,将节点加入哈希表,如果该节点在哈希表中出现过,意味着该节点是入口节点 题解代码 package mainfunc EntryNodeOfLoop(p…...

SpringMVC系列(七)之自定义注解

目录 一. Java注解简介 1.1 Java注解分类 1.2 JDK基本注解 Override Deprecated SuppressWarnings 1.3 JDK元注解 从 Java 7 开始&#xff0c;额外添加了 3 个注解: 1.4 自定义注解 如何自定义注解&#xff1f; 二. 自定义注解示例 枚举类&#xff1a; 示例一&…...

MongoDB的搭建 和crud操作

MongoDB docker 下载 docker run --restartalways -d --name mongo -v /docker/mongodb/data:/data/db -p 27017:27017 mongo:4.0.6使用navcat工具使用MongoDB Crud操作 jar包 <dependency><groupId>org.projectlombok</groupId><artifactId>lom…...

软件设计师考试学习1

前言 计算机组成原理及体系结构 数据的表示 进制的转换 原码反码补码移码 最高位是符号位&#xff0c;负数符号位为1 反码补码正数和原码一样&#xff0c;负数有区别 反码符号位不动&#xff0c;其他位置取反 补码在反码基础上加1 移码是将补码的符号为取反 在原码和反码中…...

【云计算】虚拟私有云 VPC

虚拟私有云 VPC 1.前言1.1 基本介绍1.2 VPC 的作用1.3 VPC 的适用人群 2.VPC 基本概念2.1 VPC 相关基本概念2.2 其他相关基本概念 3.VPC 通信场景3.1 VPC 内部互通3.2 VPC 间互通3.2.1 对等连接3.2.2 Transit Gateway 或者云联网 3.3 访问 Internet3.3.1 Internet 网关3.3.2 NA…...

@EventListener 监听事件 ,在同一个虚拟机中如何保证顺序执行

文章目录 前言EventListener 监听事件 &#xff0c;在同一个虚拟机中如何保证顺序执行1. 设计原理2. 具体编码2.1. 编码事件监听器2.2. 制作一个生成序号方法2.3. 制作测试代码2.4. 测试结果 前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;…...

数据结构入门 — 树的概念与结构

本文属于数据结构专栏文章&#xff0c;适合数据结构入门者学习&#xff0c;涵盖数据结构基础的知识和内容体系&#xff0c;文章在介绍数据结构时会配合上动图演示&#xff0c;方便初学者在学习数据结构时理解和学习&#xff0c;了解数据结构系列专栏点击下方链接。 博客主页&am…...

linux驱动开发day6--(epoll实现IO多路复用、信号驱动IO、设备树以及节点和属性解析相关API使用)

一、IO多路复用--epoll实现 1.核心&#xff1a; 红黑树、一张表以及三个接口、 2.实现过程及API 1&#xff09;创建epoll句柄/创建红黑树根节点 int epfdepoll_create(int size--无意义&#xff0c;>0即可)----------成功&#xff1a;返回根节点对应文件描述符&#xf…...

别再死记硬背Paxos了!用“希腊城邦法案”的故事,5分钟搞懂分布式共识核心

从古希腊议会到区块链&#xff1a;用人类文明史解锁分布式共识的本质 想象一下公元前5世纪的雅典城邦&#xff0c;五百人议会正在为是否建造新战舰争论不休。议员们需要达成一致&#xff0c;但有人中途离席、有人突然反对、甚至传令官可能送错消息——这像极了今天分布式系统中…...

VTOL无人机微多普勒特征分析与6G感知技术

1. VTOL无人机微多普勒特征分析的技术背景垂直起降&#xff08;VTOL&#xff09;无人机因其独特的飞行能力在军事和民用领域获得广泛应用&#xff0c;但同时也带来了空域管理的新挑战。传统雷达识别方法主要依赖目标的宏观运动特征&#xff0c;难以精确区分VTOL的不同飞行阶段。…...

2016年FPGA市场格局:巨头并购、技术演进与工程师实战指南

1. 2016年FPGA市场格局&#xff1a;一场没有悬念的卫冕战聊起2016年的FPGA市场&#xff0c;就像看一场结局早已注定的体育比赛。赛灵思&#xff08;Xilinx&#xff09;毫无悬念地再次登顶年度营收榜首&#xff0c;这已经是它连续十几年稳坐头把交椅了。根本不需要什么复杂的财务…...

从亚投行高大幕墙钢架设计谈幕墙结构变形设计

从亚投行高大幕墙钢架设计谈幕墙结构变形设计 【摘 要】   幕墙变形设计是幕墙设计时一个非常重要的考虑要素,它是决定幕墙结构设计质量的关键因素。本文以亚洲基础建设投资银行总部大楼项目南北中厅立面高大幕墙钢架设计为例,从宏观、中观和微观三个维度分析与其连接的主…...

Cursor AI 使用限制突破:设备标识重置与多账户管理的技术实现

Cursor AI 使用限制突破&#xff1a;设备标识重置与多账户管理的技术实现 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve reached y…...

Rails控制台集成AI助手:ask_chatgpt Gem的实践指南

1. 项目概述&#xff1a;在Rails控制台里装一个AI助手 如果你是一个Ruby on Rails开发者&#xff0c;并且每天都在跟Rails控制台&#xff08; rails console &#xff09;打交道&#xff0c;那你肯定有过这样的时刻&#xff1a;盯着一段复杂的ActiveRecord查询&#xff0c;或…...

OpenClaw狂欢暗藏安全隐患,深圳机密计算科技端云一体方案筑牢AI Agent安全基座

AI Agent时代&#xff0c;安全信任的崩塌2026年初&#xff0c;OpenClaw横空出世&#xff0c;仅用60天打破React保持十年的GitHub Star纪录&#xff0c;成为当年热度最高的现象级开源项目。2026年3月&#xff0c;在英伟达GTC全球开发者大会上&#xff0c;黄仁勋直言称“OpenClaw…...

ETS2LA:为《欧洲卡车模拟2》带来终极智能驾驶体验的5大核心功能

ETS2LA&#xff1a;为《欧洲卡车模拟2》带来终极智能驾驶体验的5大核心功能 【免费下载链接】Euro-Truck-Simulator-2-Lane-Assist Plugin based interface program for ETS2/ATS. 项目地址: https://gitcode.com/gh_mirrors/eur/Euro-Truck-Simulator-2-Lane-Assist 想…...

京东自动评价工具:3分钟解决购物评价难题的智能助手

京东自动评价工具&#xff1a;3分钟解决购物评价难题的智能助手 【免费下载链接】jd_AutoComment 自动评价,仅供交流学习之用 项目地址: https://gitcode.com/gh_mirrors/jd/jd_AutoComment 还在为购物后的评价烦恼吗&#xff1f;每次收到京东的"待评价"提醒&…...

从零搭建VGG16:深入解析网络架构与PyTorch实战

1. VGG16网络架构解析 VGG16作为卷积神经网络发展史上的里程碑&#xff0c;其核心设计理念至今仍影响着现代深度学习模型。我第一次接触这个网络时&#xff0c;被它简洁优雅的结构深深吸引——全部使用33小卷积核堆叠&#xff0c;配合22最大池化&#xff0c;这种设计就像用乐高…...