所有字母异位词

news2024/12/23 22:16:37

在这里插入图片描述

class Solution {
public:
    vector<int> findAnagrams(string s, string p) {
        std::vector<int> idxs;
        // 先获取p的hash串
        std::string dstr = getHash(p);
        for (int i = 0; i<s.length(); i++) {
           // 使用滑动窗口,每次截取p的长度串并hash
           std::string sub_str = s.substr(i, p.length());
           auto hash_str = getHash(sub_str);
            // 两者比较
           if (hash_str == dstr) {
               idxs.push_back(i);
           }
        }
        return idxs;
    }

    std::string getHash(std::string str) {
        int count[26] = {0};
        for (int i = 0; i<str.length(); i++) {
            count[str[i]-'a']++;
        }
        std::ostringstream os;
        for (int j = 0; j<26; j++) {
            if (count[j] > 0)
                os << char(j+'a') << count[j];
        }
        return os.str();
    }
};

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

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

相关文章

【Shiro】基本使用

1、环境准备 1、Shiro不依赖容器&#xff0c;直接创建maven工程即可 2、添加依赖 <dependencies><dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-core</artifactId><version>1.9.0</version></depen…

华为云云耀云服务器L实例评测|部署宝塔及使用宝塔管理服务器

在昨天的文章中,我们了解了一些关系实例的概念性的东西,并且购买了服务器,然后登录上后进行了简单的操作,今天我将会按照官网给出的教程,进行部署宝塔及使用宝塔对服务器进行管理的实践,那么 就让我们开始吧! 第一步:购买华为云云耀云服务器L实例 这个可以参考我的上一篇文章,…

关于医疗器械的检测认证

医疗器械注册审评流程&#xff1f; 【每日分享23.7.27】医疗器械产品注册申报流程&#xff08;超详细版&#xff09;之注册申报受理及审评审批 - 知乎 (zhihu.com) 医疗器械注册审评流程&#xff08;附图&#xff09;_申报_咨询_机构 (sohu.com) 型式试验&#xff1f; 型式试验…

Python 图形化界面基础篇:获取文本框中的用户输入

Python 图形化界面基础篇&#xff1a;获取文本框中的用户输入 引言 Tkinter 库简介步骤1&#xff1a;导入 Tkinter 模块步骤2&#xff1a;创建 Tkinter 窗口步骤3&#xff1a;创建文本框步骤4&#xff1a;获取文本框中的用户输入步骤5&#xff1a;启动 Tkinter 主事件循环 完整…

少儿编程 2023年5月中国电子学会图形化编程等级考试Scratch编程四级真题解析(选择题)

2023年5月scratch编程等级考试四级真题 选择题(共10题,每题2分,共50分) 1、下列积木运行后的结果是 (说明:逗号后面无空格) A、我 B、爱 C、中 D、国 答案:B 考点分析:考查字符串相关积木的使用,逗号也是一个字符,所以两个连起来后第8个字符就是爱字,答案…

webpack:css-loader和style-loader关系

测试 当我们webpack 的 rules 啥都没配置的时候 const path require(path);module.exports {entry: ./src/index.js,output: {filename: index.js,path: path.resolve(__dirname, dist)},module: {rules: []} };我们在 js 中导入了 css&#xff0c;发现报错&#xff0c;因为…

Linux编译过程与交叉编译

一.GCC由来 GCC&#xff08;GNU编译器套件&#xff09;是一个自由开源的编程工具集&#xff0c;用于编译和链接C、C和其他编程语言的程序。它由理查德斯托曼&#xff08;Richard Stallman&#xff09;和其他自由软件基金会&#xff08;Free Software Foundation&#xff09;的…

leetcode229. 多数元素 II(java)

多数元素 II 题目描述Hash表记录 题目描述 难度 - 中等 leetcode229. 多数元素 II 给定一个大小为 n 的整数数组&#xff0c;找出其中所有出现超过 ⌊ n/3 ⌋ 次的元素。 示例 1&#xff1a; 输入&#xff1a;nums [3,2,3] 输出&#xff1a;[3] 示例 2&#xff1a; 输入&#…

LeetCode 1584. 连接所有点的最小费用【最小生成树】

本文属于「征服LeetCode」系列文章之一&#xff0c;这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁&#xff0c;本系列将至少持续到刷完所有无锁题之日为止&#xff1b;由于LeetCode还在不断地创建新题&#xff0c;本系列的终止日期可能是永远。在这一系列刷题文章…

竞赛 基于机器视觉的行人口罩佩戴检测

简介 2020新冠爆发以来&#xff0c;疫情牵动着全国人民的心&#xff0c;一线医护工作者在最前线抗击疫情的同时&#xff0c;我们也可以看到很多科技行业和人工智能领域的从业者&#xff0c;也在贡献着他们的力量。近些天来&#xff0c;旷视、商汤、海康、百度都多家科技公司研…

使用电力系统稳定器 (PSS) 和静态 VAR 补偿器 (SVC) 提高瞬态稳定性(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

fastjson远程命令执行

fastjson远程代码执行 漏洞原因&#xff1a;fastjson在对json字符串反序列化的时候&#xff0c;会读取到type的内容&#xff0c;将json内容反序列化为java对象并调用这个类的setter方法。 1、搭建rmi服务 直接利用jndi-exploit工具 2、抓包改为POST。开启nc监听、发包 PO…

Python 函数的定义

视频版教程 Python3零基础7天入门实战视频教程 函数 函数是执行特定任务的一段代码&#xff0c;程序通过将一段代码定义成函数&#xff0c;并为该函数指定一个函数名&#xff0c;这样即可在需要的时候多次调用这段代码。 比如我们前面学到的range()函数&#xff0c;就是系统…

js dispatchEvent派发自定义事件

低版本IE浏览器不兼容 dispatchEvent使用 在标准浏览器提供了元素触发自定义事件的方法 element.dispatchEvent()&#xff0c;就是说&#xff0c;我们可以不用在DOM上点击按钮触发事件&#xff0c;在代码里通过 dispatchEvent&#xff08;&#xff09;就能触发事件。如下&…

【Shiro】入门概述

1.是什么 Apache Shiro 是一个功能强大且易于使用的 Java 安全(权限)框架。Shiro 可以完 成&#xff1a;认证、授权、加密、会话管理、与 Web 集成、缓存 等。借助 Shiro 您可以快速轻松 地保护任何应用程序——从最小的移动应用程序到最大的 Web 和企业应用程序。 官网&…

使用 React Native 针对 Android 进行开发

&#x1f3ac; 岸边的风&#xff1a;个人主页 &#x1f525; 个人专栏 :《 VUE 》 《 javaScript 》 ⛺️ 生活的理想&#xff0c;就是为了理想的生活 ! 目录 概述 通过安装所需工具开始使用 React Native 创建新的 React Native 项目 本指南将有助于开始使用 Windows 上的…

【操作系统】聊聊进程间通信方式

作为操作系统软件治理的核心 进程&#xff0c;那么进程间通信的方式就非常重要&#xff0c;常见的比如管道、消息队列、共享内存、信号量、信号、Socket等。本篇主要简单介绍下 我们知道每个进程都有自己独立的用户空间&#xff0c;而内核空间是共享的。 管道 ps -ef | gre…

大数据与云计算——让我们进入数字化的新纪元

当谈论大数据和云计算时&#xff0c;我们进入了一个数字化时代的新纪元。这两个领域在科技和商业领域都有着深远的影响&#xff0c;改变了我们如何处理和存储数据&#xff0c;以及如何进行计算和分析。本文将探讨大数据和云计算的基本概念&#xff0c;它们的关系以及它们在不同…

YOLO Magic - 强化YOLOv5的视觉任务框架

YOLO Magic&#x1f680; - 强化YOLOv5的视觉任务框架 YOLO Magic&#x1fa84;是一个基于Ultralytics YOLOv5 v7.0 版本的扩展&#xff0c;旨在为视觉任务提供更强大的功能和更简单的操作。它在YOLOv5的基础上引入了丰富的网络模块&#xff0c;并提供了直观易用的Web操作界面&…

mysql如何实现根据经纬度判断某一个坐标是否在一个多边形区域范围内

要根据经纬度判断一个坐标是否在一个多边形区域内&#xff0c;MySQL提供了几种函数来处理地理空间数据&#xff0c;其中包括用于处理多边形区域的函数。 1.创建一个包含多边形区域的表&#xff1a; 首先&#xff0c;创建一个表来存储多边形区域。可以使用ST_GeomFromText函数将…