在给定单词列表 wordlist
的情况下,我们希望实现一个拼写检查器,将查询单词转换为正确的单词。
对于给定的查询单词 query
,拼写检查器将会处理两类拼写错误:
- 大小写:如果查询匹配单词列表中的某个单词(不区分大小写),则返回的正确单词与单词列表中的大小写相同。
- 例如:
wordlist = ["yellow"]
,query = "YellOw"
:correct = "yellow"
- 例如:
wordlist = ["Yellow"]
,query = "yellow"
:correct = "Yellow"
- 例如:
wordlist = ["yellow"]
,query = "yellow"
:correct = "yellow"
- 例如:
- 元音错误:如果在将查询单词中的元音
('a', 'e', 'i', 'o', 'u')
分别替换为任何元音后,能与单词列表中的单词匹配(不区分大小写),则返回的正确单词与单词列表中的匹配项大小写相同。- 例如:
wordlist = ["YellOw"]
,query = "yollow"
:correct = "YellOw"
- 例如:
wordlist = ["YellOw"]
,query = "yeellow"
:correct = ""
(无匹配项) - 例如:
wordlist = ["YellOw"]
,query = "yllw"
:correct = ""
(无匹配项)
- 例如:
此外,拼写检查器还按照以下优先级规则操作:
- 当查询完全匹配单词列表中的某个单词(区分大小写)时,应返回相同的单词。
- 当查询匹配到大小写问题的单词时,您应该返回单词列表中的第一个这样的匹配项。
- 当查询匹配到元音错误的单词时,您应该返回单词列表中的第一个这样的匹配项。
- 如果该查询在单词列表中没有匹配项,则应返回空字符串。
给出一些查询 queries
,返回一个单词列表 answer
,其中 answer[i]
是由查询 query = queries[i]
得到的正确单词。
示例 1:
输入:wordlist = ["KiTe","kite","hare","Hare"], queries = ["kite","Kite","KiTe","Hare","HARE","Hear","hear","keti","keet","keto"]
输出:["kite","KiTe","KiTe","Hare","hare","","","KiTe","","KiTe"]
示例 2:
输入:wordlist = ["yellow"], queries = ["YellOw"]
输出:["yellow"]
提示:
1 <= wordlist.length, queries.length <= 5000
1 <= wordlist[i].length, queries[i].length <= 7
wordlist[i]
和queries[i]
只包含英文字母
分析:用哈希表分别记录:原始字符串是否出现过,将原始字符串全部转为小写字母的字符串是否出现过,以及将所有元音字符替换为某个标记的字符串是否出现过。之后检查每个查询的字符串,分别检查:它是否是无需改动就已经出现过,它是否有大小写错误——将字符串全部转为小写检查是否出现,它是否有元音错误——将所有元音字符替换为标记再检查,如果都没出现过,则为空。
class Solution {
public:
vector spellchecker(vector& wordlist, vector& queries) {
vectorans;
mapmp_ori,mp_x,mp;
for(int i=0;i
相关文章:
实用指南:leetcode 966. 元音拼写检查器 中等
实用指南:leetcode 966. 元音拼写检查器 中等pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !i…...
三轴传感开发新纪元:exvib扩展库让精准检测触手可及!
告别复杂代码与冗长调试,exvib扩展库为三轴传感带来颠覆性变革。极简API设计实现高效对接,开发者只需少量代码即可解锁精准检测能力,轻松应对各类传感场景,让技术落地不再艰难。 一、exvib库典型应用及检测模式 1.1 三种典型应用 exvib.open(mode)接口针对三种典型应用场景…...
List与Dictionary区别
List<T> 和 Dictionary<TKey,TValue> 都是泛型集合,但底层数据结构、使用场景、操作复杂度完全不同:✅ 一句话区别List = 有序数组,按索引找元素,可重复。Dictionary = 哈希表,按键找元素,键唯一,无序(插入顺序不保证)。📊 横向对比表 表格 复制特性Lis…...
OpenStack Cinder 架构
Cinder 是 OpenStack 的 块存储 (Block Storage) 服务,其核心功能是为虚拟机实例提供持久化的块存储设备(即云硬盘 Volume)。这些云硬盘可以被挂载到虚拟机实例上,就像给物理服务器插上一块新的硬盘一样,用于扩展实例的存储空间或持久化保存数据,即使实例本身被终止,数据…...
完整教程:IC(输入捕获)
完整教程:IC(输入捕获)pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !important; font-size…...
HiMarket 正式开源,为企业落地开箱即用的 AI 开放平台
在 AI 浪潮席卷千行百业的今天,我们看到无数企业和开发者满怀激情地投身其中。无论是将内部的大模型能力赋能给各个业务线,还是希望将昂贵的 AI 资产对外开放、构建生态,一个强大的“AI 开放平台”都已成为刚需。💡 目录 01 HiMarket 开源背景 02 HiMarket 是什么 03 快…...
如何统计DrawMeshInstancedIndirect绘制物体的Triangle数据
1)如何统计DrawMeshInstancedIndirect绘制物体的Triangle数据2)如何量化骨骼数量对功耗的影响3)Sprite Atlas和单独的Sprite的RW设置分别如何影响内存4)Playable的Animator.WriteTransform一直执行在一个Job线程里这是第444篇UWA技术知识分享的推送,精选了UWA社区的热门话…...
VK1S68C点钟LED驱动控制专用芯片高抗干扰数显驱动IC 可支持134的点阵LED显示面板
VK1S68C是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3 线串行接口、数据锁存器、LED 驱动、键盘扫描等电路。SEG脚接LED阳极,GRID脚接LED 阴极,可支持13SEGx4GRID、12SEGx5GRID、11SEGx6GRID、10SEGx7GRID的点阵LED显 示面板,最大支持10x2按键。适用…...
基于MATLAB的海洋中尺度涡旋诊断
基于MATLAB的海洋中尺度涡旋诊断方案,使用卫星高度计与海洋模式数据,结合多源特征提取与机器学习方法:一、系统架构设计 % 主程序框架 [ssh_mod, ssh_sat] = load_data(); % 加载模型与卫星数据 [ssh_merged, mask] = data_preprocess(ssh_mod, ssh_sat); % 数据融合与掩膜生…...
从混乱到有序:Tita 项目一体化管理的全场景赋能
在企业运营中,项目管理如同一条贯穿始终的主线,串联起资源调配、团队协作与目标达成。然而,多数企业在项目推进过程中,常常陷入流程断裂、信息滞后、协作低效的困境。Tita 项目一体化管理以全场景覆盖的特性,为企业提供从根源上解决问题的方案,让项目管理从 “被动救火”…...
SpringBoot入门指南:让Java开发变得像搭积木一样简单 - 教程
SpringBoot入门指南:让Java开发变得像搭积木一样简单 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New"…...
汇编语言[王爽]-13 int指令【中断实现loop、jmp】
int指令 格式:int n :n是中断向量码,引发一个中断 作用:等价于下面的代码【中断流程】 1. 取中断向量码N 2. pushf 3. IF=0,TF=0 4. push CS , push IP 5. (IP)=(N*4) ; (CS)=(N*4+2)iret指令 格式: iret 从中断例程中返回 作用:等价于下面的代码 pop IP pop CS popf💡…...
Supabase云同步架构:Flutter应用的数据同步策略
Supabase云同步架构:Flutter应用的数据同步策略本文基于BeeCount(蜜蜂记账)项目的实际开发经验,深入探讨如何使用Supabase构建安全、高效的云端数据同步系统。项目背景 BeeCount(蜜蜂记账)是一款开源、简洁、无广告的个人记账应用。所有财务数据完全由用户掌控,支持本地存储…...
汇编语言[王爽]-12 内中断
内中断的产生 来源及中断码除法错误:0 单步执行:1 执行into指令:4 执行int n指令:n中断向量表中断过程 CPU收到中断信息后,根据中断向量表,跳转到相应的中断程序中处理中断,这一过程称为中断过程从中断信息中取得中断向量码N 标志寄存器入栈(因为中断过程中要改变标志寄…...
【SPIE出版】第五届先进制造技术与电子信息国际学术会议(AMTEI 2025)
第五届先进制造技术与电子信息国际学术会议(AMTEI 2025)将于2025年09月26-28日在重庆召开。【先进制造、机械工程、电子信息方向均可投稿】 【SPIE见刊发表,EI Compendex和Scopus检索收录 | 发表&检索十分稳定!】 第五届先进制造技术与电子信息国际学术会议(AMTEI 202…...
2025.9.15 考试总结
总结来说就是 3h 写 t1 没时间想 t2,t3 了,其实 t3 还是很一眼的。 T1 一个斜优板子。 每次如果 \(l_i = 1, r_i = i - 1\),是很容易用李超树做到 \(O(n \log n)\)。 既然每次查一个区间,那么就在外面套一个线段树。 std 的做法是用线段树维护凸包,我的树套树被卡常了。 李…...
汇编语言[王爽]-01 基础知识
汇编语言的组成汇编指令:机器码的助记符,有相应的机器码 伪指令:没有对应的机器码,由编译器执行,计算机不执行 其他符号:如+ - * / 由编译器识别,没有对应的机器码汇编指令是汇编语言的核心 指令与数据是应用上的概念,在x86架构中,指令和数据存放在内存或磁盘中没有任…...
贪心外套计数
[AGC049E] Increment Decrement一个序列 \(A\) 有一个权值:序列 \(a\) 元素都等于 \(0\),能进行若干次操作单点加 \(1\) 或 \(-1\),花费为 \(1\)。 区间加 \(1\) 或 \(-1\),花费为 \(C\)。\(a\) 变成 \(A\) 的最小花费,即为 \(A\) 的权值。 给 \(n\) 个长 \(k\) 的序列 \(…...
汇编语言[王爽]-02 寄存器
14个寄存器,都是16位 AX BX CX DX SI DI SP BP IP CS SS DS ES PSW 通用寄存器:AX BX CX DX 段寄存器:CS DS SS ES cpu分段寻址 8086是16位机,寄存器,运算器,寄存器与运算器的通路都是16位的,那么又是如何达到20位的地址总线宽度的呢。答案是使用分段寻址 物理地址= 段地…...
汇编语言[王爽]-03 寄存器(内存访问)
内存视图内存由低至高从上往下画 栈的生长方向:高地址向低地址 小端存储:高位存放在高地址,低位存放在低地址书写的时候高位在左边。 4E20H 存储单元高地址在右边。 0 - 3 : 20 4E 12 00mov指令 mov ax,1000h mov ds,ax mov [0],bx #传送字型数据内存单元以ds为段基址 不能…...
汇编语言[王爽]-05 [BX]和loop指令
loop指令实现循环 执行过程: ①(cx)=(cx)-1 ②判断 cx 中的值,不为零则转至标号处执行程序,如果为零则向下执行。 例:计算2^12 assume cs:codesegcodeseg segmentmov ax,2#-------做11次add ax,ax----------mov cx,11 s:add ax,axloop s#--------------------------------m…...
完整教程:YOLO数据集格式转换工具v1.0-微智启软件工作室
完整教程:YOLO数据集格式转换工具v1.0-微智启软件工作室pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", mo…...
2.docker 安装
系统环境 wind(wsl ) Ubuntu 安装Docker...
树形DP2F
T1 树的直径 我们使用\(f[u]\)表示以\(u\)为根的子树,向下延伸的最远距离 那么\(f[u]\)的初始值为0,表示\(u\)能向下延伸的最远距离是自己,\(f[u]=0\) \(ans=max(ans,f[u]+f[v]+w)ans\)表示直径 错误1 如果有负边权,所以我把\(f[u]\)的初值设置成为一个极小值,这样的话,和…...
搞定SPI开发:硬件设计精讲与CH390H示例应用
想要轻松搞定SPI开发?聚焦硬件设计关键要点,结合CH390H芯片示例,带你从理论到实践,全面掌握SPI开发技术。 本文以Air780EPM为例,分享SPI接口的开发注意事项及硬件设计要点。 一、Air780EPM的SPI功能支持 在Air780EPM中,SPI接口通过特定GPIO引脚实现,需结合LuatOS的API进…...
Qt-摄像头捕获画面
Qt-摄像头捕获画面在qt中捕获摄像头画面,在ui界面上添加一个comboBox控件、label标签和两个pushButton按钮,comboBox用于显示摄像头的设备,按钮用于开启摄像头和捕获当前帧的画面,label用于显示摄像头捕获的画面。//需要在.pro文件中加上multimedia multimediawidgets QT …...
我开发的软件和开源/免费软件
一、我开发的软件 1.软件目录 2.下载地址 通过网盘分享的文件: 链接:https://pan.baidu.com/s/1PiK9OhZs_mSjd5PcXRig4Q?pwd=dyzj 提取码:dyzj 复制这段内容后打开百度网盘手机App,操作更方便哦二、开源/免费软件Everything.zip(电脑文件搜索软件) ScreenToGif录屏工具 O…...
PostgreSQL中级认证,PG证书官网查询
Oracle数据库的认证行业皆知,它分为OCA、OCP和OCM三种代表着初中高三个级别,证书可以在Oracle官网查询;PostgreSQL数据库的认证也是类似,分为PGCA、PGCP和PGCM三种,如果是工信部人才交流中心的PG认证,可以在工信人才官网查询,查询网址:www.miitec.cn 一、工信部人才交流…...
LLaMA-Adapter - 详解
LLaMA-Adapter - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !important; font-size: 14…...
查看安装软件版本的命令
java -version allure --version pip3 --verison...
ubuntu 20.04安装mysql 5.7
环境Os:ubuntu 20.04 desktop桌面版mysql:mysql-5.7.42-linux-glibc2.12查看操作系统信息root@db:/soft# ldd --version ldd (Ubuntu GLIBC 2.31-0ubuntu9) 2.31 Copyright (C) 2020 Free Software Foundation, Inc. This is free software; see the source for copying condit…...
企业微信逆向开发协议,ipad协议调用方式
企业微信逆向开发协议,ipad协议调用方式企业微信ipad协议接口,已经实现了企业微信pc端所有功能。 【初始化】:初始化企业微信、设置消息回调、获取运行中的实例、根据uuid查看实例详情 【登录】: 获取登录二维码、输入验证码设置、 自动登录、退出登录、获取二次验证二维码…...
OpenStack Nova Scheduler 计算节点选择机制
Nova Scheduler 的核心任务是解决“虚拟机实例在哪个计算节点上启动”的问题,它根据用户通过 flavor 提出的资源需求(如 CPU、内存、磁盘)来做出决策。其默认的调度器是 Filter Scheduler,工作流程主要分为过滤 (Filtering) 和称重 (Weighting) 两个阶段。 1、整体流程 1.1…...
记一种很新的 bitset
bitset 可以维护位移和或。 我们可以扩展他一下,变成值域为 \([0,2^k)\),然后每次操作是位移和对位相加然后对 \(2^k-1\) 取 \(\min\)。 我们每一位取 \(k+1\) 个 \(\text{bit}\),每次加起来后把第 \(k+1\) 位或到前面,然后再与掉就可以了。 复杂度 \(\dfrac {n\log k}\ome…...
基于yolo12进行深度学习的机动车车牌检测
本文介绍了一个基于YOLOv12深度学习的机动车车牌检测系统。该系统采用PyQt5构建图形界面,支持图片和视频输入,能实时检测并分割车牌区域,同时提供结果保存功能。项目使用约1300张包含多角度、多颜色变化的车牌图像进行训练,提升模型鲁棒性。代码部分详细展示了界面设计、YO…...
有向图强连通分量
相关定义 若有向图的 \(u, v\) 两点互相可达,则称 \(u, v\) 强连通。满足任意两点强连通的有向图为 强连通图。有向图的极大强连通子图称作 强连通分量(SCC)。 以下讨论时默认图为有向弱连通图(弱连通即将有向边看作无向边时连通)。 DFS 树 对于有向图,按照任意顺序对结点…...
Kafka 消费者元数据topicId变化问题
遇到问题程序启动后, 短时间内没有数据2025-09-15 15:09:44,214 INFO org.apache.kafka.clients.Metadata [] - [Consumer clientId=flink-test-2, groupId=flink-test] Resetting the last seen epoch of partition ykkafka-3 to 0 since the as…...
【SPIE出版】第五届生物医学与生物信息工程国际学术会议(ICBBE 2025)
第五届生物医学与生物信息工程国际学术会议(ICBBE 2025)将于2025年9月26-28日在中国沈阳召开。【ICBBE 2025已成功申请到SPIE独立出版,稳定EI, Scopus检索!】 【北京大学一级教授莅临本会,欢迎专家学者积极报名参会,即享现场直面交流机会,助力大家求学/科研之路!】 第五…...
Qoder 全新「上下文压缩」功能正式上线,省 Credits !
Qoder 全新「上下文压缩」功能正式上线,高效管理会话上下文,节省开发成本,同时保持高效协作!你是否经历过与 AI Coding 工具协作编程时,对话越来越长,回答却开始变慢,甚至跑偏?在使用 AI Coding 工具过程中,是否觉得 tokens 消耗过快,越来越不经用? Qoder 全新「上下…...
journald 持久化 + 限额脚本
#!/usr/bin/env bash # --------------------------------------------------------- # Enable persistent systemd-journald logs with disk limits # Tested on: AlmaLinux 9 / CentOS Stream 9 # Author: 四点 # ---------------------------------------------------------…...
【2025-09-14】连岳摘抄
23:59一个人要想战胜自己的恐慌,就必须在自身与全人类的命运间建立关联。一个人要想坦然生活下去,就必须明白自己是全人类的一分子。——阿尔弗雷德阿德勒该讨厌的人就得讨厌,这样才能开心。该讨厌的人假装不讨厌,自己就不能开心。一个人利用你,侮辱你,当然应该讨厌。你性…...
深入解析:PAT乙级_1125 子串与子列_Python_AC解法_含疑难点
深入解析:PAT乙级_1125 子串与子列_Python_AC解法_含疑难点pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New",…...
ESP32-S3 与GPS北斗通信返回定位/海拔/速度数据的测试代码
1.设备选用了银尔达企业店的 M100PG(DTU固件)贴片卡-单北斗模块 https://item.taobao.com/item.htm?id=718803061339&mi_id=0000qaxoKpzXrjCqKjNVBO442w3_i_Vz_sY6iyO-vASV8-s&spm=tbpc.boughtlist.suborder_itempic.d718803061339.67002e8dTIrFEQ&sku_properties…...
GZY.Quartz.MUI(基于Quartz的UI可视化操作组件) 2.8.0发布 新增仪表盘和检索功能
前言 很久没更新这个组件了,主要是没想到加什么东西 后来经过群友提醒,其实可以加个仪表盘的功能,方便在任务比较多的时候监听执行情况. (PS:有些群友的定时任务已经干到了上百条..) 说加就加.. 所以就有了2.8的版本.. 2.8.0正式发布. 更新内容: 1.新增任务界面搜索功能,可根据…...
AIGEO助力企业破局
商务部9月13日发布公告,就美国对华集成电路领域相关措施发起反歧视调查,这一事件凸显了核心技术自主可控的紧迫性。在AI搜索优化领域,不少中国企业正积极创新突破外部限制,跑一跑自研的AIGEO产品便是其中典型。您是否正为企业曝光度低、市场影响力不足而发愁?跑一跑AIGEO产…...
东南大学数据库课程06-Database Design
Database Design 目录Database DesignData DependencyNormalization of Relational Schema1NF2NFProblems of non 2NF3NFProblems of non 3NFSummaryER Model and ER DiagramDatabase Design MethodRequirement AnalysisConcept DesignLogic DesignPhysical DesignSummary Data…...
MacOS升级15.2后的问题(二):无法修改mac网络地址
升级新的系统版本后,安全策略有变动,无法直接修改mac网络地址,只能绕过去 1.打开《系统设置》->《网络》->《其他服务》->《管理虚拟接口》 2.点击《+》号新增,名字自己随便取,记住BSD名称就行3.打开终端,输入指令,例如刚刚我新增的test1 对应BSD名称 bridge2 …...
东南大学数据库课程07-Distributed Database Systems
Distributed Database Systems 目录Distributed Database SystemsIntroductionDatabase DistributionStrategies of Data DistributionUnit of Data DistributionProblems Caused by Data DistributionFederated DatabaseQuery Optimization in DDBMSRecovery Mechanism in DDB…...
HCIA——VLAN间通信
...
Xdebug安装与PhpStorm调试配置
一、Xdebug 介绍 Xdebug 是 PHP 的一个扩展,提供了多种功能以改善 PHP 开发体验。单步调试:在脚本执行时于集成开发环境(IDE)或编辑器中逐行调试代码的一种方式。PHP 错误报告的改进:改进的 var_dump() 函数,针对提示、警告、错误和异常提供堆栈跟踪,以突出显示导致错误…...