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

【LeetCode2744】最大字符串配对数目

1、题目描述

【题目链接】
标签:数组,哈希表,字符串,模拟
 给你一个下标从 0 开始的数组 words ,数组中包含 互不相同 的字符串。
 如果字符串 words[i] 与字符串 words[j] 满足以下条件,我们称它们可以匹配:
字符串 words[i] 等于 words[j] 的反转字符串。
0 <= i < j < words.length
请你返回数组 words 中的 最大 匹配数目。
注意,每个字符串最多匹配一次。

示例 1:
输入:words = [“cd”,“ac”,“dc”,“ca”,“zz”]

输出:2
解释:在此示例中,我们可以通过以下方式匹配 2 对字符串:

  • 我们将第 0 个字符串与第 2 个字符串匹配,因为 word[0] 的反转字符串是 “dc” 并且等于 words[2]。
  • 我们将第 1 个字符串与第 3 个字符串匹配,因为 word[1] 的反转字符串是 “ca” 并且等于 words[3]。
    可以证明最多匹配数目是 2 。

示例 2:
输入:words = [“ab”,“ba”,“cc”]
输出:1
解释:在此示例中,我们可以通过以下方式匹配 1 对字符串:

  • 我们将第 0 个字符串与第 1 个字符串匹配,因为 words[1] 的反转字符串 “ab” 与 words[0] 相等。
    可以证明最多匹配数目是 1 。

示例 3:
输入:words = [“aa”,“ab”]
输出:0
解释:这个例子中,无法匹配任何字符串。

提示:

1 <= words.length <= 50
words[i].length == 2
words 包含的字符串互不相同。
words[i] 只包含小写英文字母。

2、基本思路

这是一道简单的字符串处理的题目,判断数组中有多少个互逆的字符对,我们可以用哈希表存储,每次判断哈希表中,当前字符的反转字符是否出现,如果未出现就将其标记为1;若出现就将其标记为0,且,ans++,最后返会ans即可。

3、代码实现

int maximumNumberOfStringPairs(vector<string>& words) {unordered_map<string,int> mp;int ans = 0;for(string str:words){string a = str;reverse(a.begin(),a.end());if(mp.find(a)==mp.end()){mp[str] = 1;continue;}else{ans++;mp[a] = 0;}}return ans;}

相关文章:

【LeetCode2744】最大字符串配对数目

1、题目描述 【题目链接】 标签&#xff1a;数组&#xff0c;哈希表&#xff0c;字符串&#xff0c;模拟  给你一个下标从 0 开始的数组 words &#xff0c;数组中包含 互不相同 的字符串。  如果字符串 words[i] 与字符串 words[j] 满足以下条件&#xff0c;我们称它们可以…...

安全加速SCDN是什么

安全加速SCDN&#xff08;Secure Content Delivery Network&#xff0c;SCDN&#xff09; 是集分布式DDoS防护、CC防护、WAF防护、BOT行为分析为一体的安全加速解决方案。已使用内容分发网络&#xff08;CDN&#xff09;或全站加速网络&#xff08;ECDN&#xff09;的用户&…...

Android 布局菜鸟 android中的布局类型和特点?

一、LinearLayout(线性布局) 1、 特点: 主要以水平或垂直方式来排列界面中的控件。并将控件排列到一条直线上。在线性布局中,如果水平排列,垂直方向上只能放一个控件,如果垂直排列,水平方向上也只能放一个控件。 2、适⽤场景: Android开发中最常见的 ⼀种布局⽅式,排列…...

2023总结与2024寒假计划

王泽政 2023 的总结 学习总结 关于 2023 学习总体上来讲&#xff0c;2023 学的东西还是不少的&#xff0c;有对技术栈广度的扩展&#xff0c;也有对计算机深度的挖掘。 学习内容总结&#xff1a; 学习 React 学习浏览器渲染原理 学习计算机网络 学习 Next.js 学习 Nest.…...

016-Vue-黑马2023:前后端分离开发(在线接口文档),前端工程化、Element、vue编写一个完成页面、Vue路由、vue打包部署到nginx

第三节 前后端分离开发 1、介绍 开发模式 前后端混合开发&#xff1a;传统开发模式 前后端分离开发&#xff1a;当前最为主流的开发模式 页面原型需求案例&#xff1a;分析出接口文档 离线开发文档示例&#xff1a; 2、YAPI&#xff08;官网已停用&#xff09; 202…...

如何给新华网投稿发稿?新华网的媒体发稿方法步骤

现如今&#xff0c;互联网已经成为了人们获取信息的主要途径&#xff0c;各大媒体网站也成为了发布自己作品的首选平台。其中&#xff0c;新华网作为中国最具影响力的新闻媒体之一&#xff0c;其内容覆盖面广、触及人群众多&#xff0c;因此&#xff0c;能够在新华网上发表文章…...

为什么 macOS 比 Windows 稳定?

在计算机操作系统领域&#xff0c;macOS 和 Windows 分别是苹果公司和微软公司的主打产品。尽管两者都拥有大量的用户群体&#xff0c;但在稳定性和用户体验方面&#xff0c;macOS 常常被认为优于 Windows。那么&#xff0c;为什么 macOS 比 Windows 更稳定呢&#xff1f; 我们…...

从matlab的fig图像文件中提取数据

这里用的是openfig&#xff08;&#xff09;函数打开的fig文件 →→→【matlab 中 fig 数据提取】 很简洁 →→→【MATLAB提取 .fig 文件中的数据】 这个给出了包含多个曲线的情况 →→→【提取matlab fig文件里的数据和legend】 chatgpt给出的方法 打开fig文件并保存数据 我的…...

基于网络爬虫的微博热点分析,包括文本分析和主题分析

基于Python的网络爬虫的微博热点分析是一项技术上具有挑战性的任务。我们使用requests库来获取微博热点数据&#xff0c;并使用pandas对数据进行处理和分析。为了更好地理解微博热点话题&#xff0c;我们采用LDA主题分析方法&#xff0c;结合jieba分词工具将文本分割成有意义的…...

前端图片转base64 方法

在uni-app、Vue.js或其他前端框架中&#xff0c;将图片转换为Base64编码的过程是相似的。以下是一个简单的示例&#xff0c;说明如何在这些环境中使用JavaScript将图片转换为Base64编码。 1. HTML部分 首先&#xff0c;你需要在HTML中放置一个文件输入元素&#xff0c;用于选…...

Go语言数据结构(一)双向链表

list容器 Go语言中list容器定义在"container/list"包中&#xff0c;实现了一个双向链表。本文第一部分总结源码包中的方法&#xff0c;第二部分展示使用list包的常见示例用法以及刷题时的用法。 食用指南&#xff1a;先看第二部分的常用示例用法然后再用到时在第一部…...

【MySql】MySQL 如何创建新用户

具体代码与实现方法 登录 MySQL&#xff1a; 使用 root 用户或具有相应权限的用户登录到 MySQL。可以使用以下命令&#xff1a; mysql -u root -p这里 -u 后面跟的是用户名&#xff0c;-p 表示提示输入密码。 创建新用户&#xff1a; 使用以下 SQL 命令创建新用户&#xff1a;…...

【DFS】200.岛屿数量

题目 法1&#xff1a;DFS 最简单的DFS必须掌握&#xff01;&#xff01;&#xff01; class Solution {public int numIslands(char[][] grid) {int m grid.length, n grid[0].length, ans 0;if (m 0 || n 0) {return ans;}boolean[][] visited new boolean[m][n];for…...

Vue动态添加新的属性到实例上(vue的问题)

当我们去看vue文档的时候&#xff0c;发现如果在实例创建之后添加新的属性到实例上&#xff0c;它不会触发视图更新。比如我们我们开始创建了一个对象实例&#xff0c;在实例创建之后为其增加新的属性&#xff0c;我们发现这个属性不能生效,此时需要使用this.$set()方法。 &…...

HarmonyOS应用开发者高级认证

一、判断题 云函数打包完成后&#xff0c;需要到AppGallery Connect创建对应函数的触发器才可以在端侧中调用&#xff08;错&#xff09; 在column和Row容器组件中&#xff0c;aligntems用于设置子组件在主轴方向上的对齐格式&#xff0c;justifycontent用于设置子组件在交叉轴…...

设计模式复盘

一、背景 在项目中&#xff0c;对于单据的扩展是基于类似于接口扩展实现的。从业务横行来看&#xff0c;业务有A、B、C&#xff1b;从纵向来看&#xff0c;单个业务逻辑编排也可以划分为基础数据查询&#xff0c;决策判断&#xff0c;逻辑执行三大块。 单据扩展&#xff1a;平…...

电力能源三维可视化合集 | 图扑数字孪生

电力能源是现代社会发展和运行的基石&#xff0c;渗透于工业、商业、农业、家庭生活等方方面面&#xff0c;它为经济、生活质量、环境保护和社会发展提供了巨大的机会和潜力。图扑软件应用自研 HT for Web 强大的渲染引擎&#xff0c;助力现代化的电力能源数字孪生场景&#xf…...

What is `@Repository` does?

Repository 是Spring注解&#xff0c;标识数据访问层组件&#xff08;DAO, Data Access Object&#xff09; 当一个类被标记为 Repository 时&#xff1a; 1、组件扫描与自动代理&#xff1a; Spring通过组件扫描&#xff08;Component Scan&#xff09;机制发现带有 Reposit…...

c# 自定义 滑块TrackBar

辛苦半天做出来的&#xff0c;如果觉得好用&#xff0c;记得点赞 效果图如下&#xff1a; 具体操作&#xff1a; 1 、添加代码&#xff08;代码在下面&#xff09;&#xff0c;重新生成下整个工程&#xff0c;在工具栏中就出现控件&#xff0c;将控件拖到窗体中 2、只需要调整…...

MyBatis整合分页插件PageHelper的使用和说明

MyBatis&#xff0c;作为目前流行的ORM框架&#xff0c;大大方便了日常开发。而对于分页查询&#xff0c;虽然可以通过SQL的limit语句实现&#xff0c;但是比较繁琐。而MyBatis PageHelper的出现&#xff0c;则解决了这一痛点。这里将介绍如何在Spring Boot、MyBatis的环境中通…...

MySQL高频面试题(2026最新版):覆盖90%考点,小白也能直接背

很多开发者备考时&#xff0c;要么盲目刷题、记不住重点&#xff0c;要么只背答案、不懂原理&#xff0c;面试时被面试官追问一句就卡壳。其实MySQL面试没有那么复杂&#xff0c;核心考点就那么多&#xff0c;只要吃透高频题、理解底层逻辑&#xff0c;就能从容应对。本文整理了…...

MiniCPM-V-2_6制造业:产线图识别+设备状态与维护提醒生成

MiniCPM-V-2_6制造业&#xff1a;产线图识别设备状态与维护提醒生成 1. 项目背景与价值 在现代制造业中&#xff0c;生产线的可视化监控和设备维护是保证生产效率和质量的关键环节。传统的人工巡检方式效率低下&#xff0c;容易遗漏细节&#xff0c;而且无法实时发现问题。Mi…...

Qwen2.5-7B-Instruct效果展示:复杂代码生成与深度知识解答真实案例

Qwen2.5-7B-Instruct效果展示&#xff1a;复杂代码生成与深度知识解答真实案例 1. 项目简介 Qwen2.5-7B-Instruct是阿里通义千问系列的旗舰级大模型&#xff0c;相比1.5B和3B的轻量版本&#xff0c;这个7B参数的模型在能力上实现了质的飞跃。它专门针对复杂的文本交互场景设计…...

前端进阶 课程二十六、:Flex布局进阶与实战(复杂布局)

一、学习目标 掌握Flex布局嵌套规则,实现容器内多层Flex嵌套; 运用Flex完成头部+内容区+底部、卡片详情、响应式导航三大复杂布局; 解决Flex项目溢出、对齐失效、高度自适应等常见问题; 区分Flex与float布局,明确Flex的现代布局优势。 二、核心知识点+实战代码 1. Fl…...

OpenClaw(首选,全能执行) - 支持平台:**WhatsApp、Telegram、微信、企业微信、飞书、Slack、Discord**等15+平台

一、自动处理邮件的AI&#xff08;过滤、归档、代发、总结&#xff09; 1. OpenClaw&#xff08;全能型&#xff0c;本地多平台&#xff09; 核心能力&#xff1a;垃圾邮件过滤、自动归档、按规则分类、提取待办、代发模板邮件、批量退订、邮件摘要。优势&#xff1a;本地部署、…...

BYD 高通8155 OTA项目 我写的一篇专利

草根不要在BYD写专利&#xff0c;我24年1月初开始撰写&#xff0c;24年6月份才提交到专利公司&#xff0c;被驳回是因为有对比文件公开了我的发明点&#xff0c;是重庆赛力斯 4月份公开的&#xff0c;部门内部流程审核极慢&#xff0c;集团IPR找各种理由能拖上你半年&#xff0…...

Arcgis林业资源管理实战:从GPS打点到小班成图的完整工作流

ArcGIS林业资源管理实战&#xff1a;从GPS打点到小班成图的完整工作流 林业资源调查是森林经营管理的基石&#xff0c;而GIS技术正在彻底改变传统林业调查的工作模式。记得去年参与某林场资源普查时&#xff0c;我们团队用传统方法完成一个林班调查需要两周&#xff0c;而采用A…...

济南精神心理专科:如何识别躯体化障碍的早期信号

济南躯体化障碍疾病就医选择难题在济南&#xff0c;面对躯体化障碍疾病的朋友最关心的是隐私和靠谱。选择一家好的医院至关重要&#xff0c;尤其是看躯体化障碍一定要选专科专业医院。这类医院不仅在专业诊疗上更有优势&#xff0c;还能提供更好的隐私保护和服务体验。本文将基…...

LeetCode 热题100——3.无重复字符的最长子串

题目&#xff1a; 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长 子串 的长度。 示例 1: 输入: s "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc"&#xff0c;所以其长度为 3。注意 "bca" 和 "cab&qu…...

APRSPacketLib:嵌入式C库实现APRS协议编解码

1. APRSPacketLib 项目概述 APRSPacketLib 是一个专为业余无线电&#xff08;Ham Radio&#xff09;领域设计的轻量级嵌入式 C 语言库&#xff0c;核心目标是 在资源受限的微控制器平台上高效完成 APRS&#xff08;Automatic Packet Reporting System&#xff09;协议数据包的…...