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

leetcode 热题 100_找到字符串中所有字母异位词

题解一:

        滑动窗口:类似于字符串匹配,但匹配异位词需要包含相同的字母及个数,可以分别用两个数组存储字符串s滑动窗口和字符串p的字母及个数,再用Array.equals()进行比对。对于s.length()<p.length()的情况需要特判。

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;class Solution {public List<Integer> findAnagrams(String s, String p) {List<Integer> result = new ArrayList<>();int sLen = s.length();int pLen = p.length();if (sLen < pLen) return new ArrayList<>();int[] sArray = new int[26];int[] pArray = new int[26];for (int i = 0; i < pLen; i++) {pArray[p.charAt(i) - 'a']++;}for (int i = 0; i < pLen; i++) {sArray[s.charAt(i) - 'a']++;}if (Arrays.equals(pArray, sArray)) result.add(0);for (int i = 0; i < sLen - pLen; i++) {sArray[s.charAt(i) - 'a']--;sArray[s.charAt(i + pLen) - 'a']++;if (Arrays.equals(pArray, sArray)) result.add(i + 1);}return result;}
}

相关文章:

  • 计算机组成原理-第七章 输入/输出系统【期末复习|考研复习】
  • 企业数字人虚拟形象定制解决方案
  • [SpringCloud] OpenFeign核心架构原理 (一)
  • 『运维备忘录』之 RegEx 正则表达式实例汇总
  • 学习JAVA的第十三天(基础)
  • 芋道项目部署问题指南
  • 常用“树”数据结构
  • 通信棒自动化测试工具
  • uni-app 系统状态栏高度CSS变量--status-bar-height
  • istio pod不启动及访问报RBAC错误问题解决
  • JavaWeb Response:设置响应数据
  • 如何更好的引导大语言模型进行编程的高效开发流程?
  • Kali Linux 2024.1
  • Java多线程注意事项(初级程序员必看)
  • 蓝桥杯练习题——dp
  • 分享的文章《人生如棋》
  • 【Linux系统编程】快速查找errno错误码信息
  • axios 和 cookie 的那些事
  • create-react-app做的留言板
  • EventListener原理
  • IDEA常用插件整理
  • interface和setter,getter
  • Java的Interrupt与线程中断
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • js
  • js中forEach回调同异步问题
  • LeetCode18.四数之和 JavaScript
  • MySQL QA
  • node入门
  • PHP 小技巧
  • Python语法速览与机器学习开发环境搭建
  • SegmentFault 2015 Top Rank
  • Vue2 SSR 的优化之旅
  • 回流、重绘及其优化
  • 马上搞懂 GeoJSON
  • 移动互联网+智能运营体系搭建=你家有金矿啊!
  • 译米田引理
  • 用Node EJS写一个爬虫脚本每天定时给心爱的她发一封暖心邮件
  • 用quicker-worker.js轻松跑一个大数据遍历
  • 怎么把视频里的音乐提取出来
  • ​软考-高级-系统架构设计师教程(清华第2版)【第20章 系统架构设计师论文写作要点(P717~728)-思维导图】​
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • $.ajax()
  • $.ajax,axios,fetch三种ajax请求的区别
  • %3cscript放入php,跟bWAPP学WEB安全(PHP代码)--XSS跨站脚本攻击
  • (¥1011)-(一千零一拾一元整)输出
  • (1)常见O(n^2)排序算法解析
  • (2.2w字)前端单元测试之Jest详解篇
  • (4)事件处理——(7)简单事件(Simple events)
  • (react踩过的坑)Antd Select(设置了labelInValue)在FormItem中initialValue的问题
  • (分布式缓存)Redis持久化
  • (附源码)springboot优课在线教学系统 毕业设计 081251
  • (附源码)ssm高校实验室 毕业设计 800008
  • (附源码)ssm旅游企业财务管理系统 毕业设计 102100
  • (亲测有效)解决windows11无法使用1500000波特率的问题