当前位置: 首页 > 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;}
http://www.lryc.cn/news/283911.html

相关文章:

  • 安全加速SCDN是什么
  • Android 布局菜鸟 android中的布局类型和特点?
  • 2023总结与2024寒假计划
  • 016-Vue-黑马2023:前后端分离开发(在线接口文档),前端工程化、Element、vue编写一个完成页面、Vue路由、vue打包部署到nginx
  • 如何给新华网投稿发稿?新华网的媒体发稿方法步骤
  • 为什么 macOS 比 Windows 稳定?
  • 从matlab的fig图像文件中提取数据
  • 基于网络爬虫的微博热点分析,包括文本分析和主题分析
  • 前端图片转base64 方法
  • Go语言数据结构(一)双向链表
  • 【MySql】MySQL 如何创建新用户
  • 【DFS】200.岛屿数量
  • Vue动态添加新的属性到实例上(vue的问题)
  • HarmonyOS应用开发者高级认证
  • 设计模式复盘
  • 电力能源三维可视化合集 | 图扑数字孪生
  • What is `@Repository` does?
  • c# 自定义 滑块TrackBar
  • MyBatis整合分页插件PageHelper的使用和说明
  • 情人节专属--HTML制作情人节告白爱心
  • 带你学C语言-指针(4)
  • ACL访问控制列表
  • sqli-labs关卡25(基于get提交的过滤and和or的联合注入)
  • 机器学习周刊第六期:哈佛大学机器学习课、Chatbot Ul 2.0 、LangChain v0.1.0、Mixtral 8x7B
  • 【算法与数据结构】Java实现查找与排序
  • 边缘计算的挑战和机遇(结合RDH-EI)
  • 详解IP安全:IPSec协议簇 | AH协议 | ESP协议 | IKE协议_ipsec esp
  • 【图论】树的直径
  • 制作一个Python聊天机器人
  • docker 使用 vcs/2018 Verdi等 eda 软件