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

【Leetcode 383】赎金信 —— 哈希表 有注解

给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。

如果可以,返回 true ;否则返回 false 。

magazine 中的每个字符只能在 ransomNote 中使用一次。

示例 1:

输入:ransomNote = "a", magazine = "b"
输出:false

示例 2:

输入:ransomNote = "aa", magazine = "ab"
输出:false

示例 3:

输入:ransomNote = "aa", magazine = "aab"
输出:true

 哈希表 有注解

// 哈希表
function canConstruct(ransomNote: string, magazine: string): boolean {const mLen = magazine.length;if (mLen < ransomNote.length) return false;const magazineMap = new Map<string, number>();//统计 magazine 的字母出现次数for (const key of magazine) {const val = magazineMap.has(key) ? magazineMap.get(key)! + 1 : 1;magazineMap.set(key, val);}for (const key of ransomNote) {// 用 ransomNote 字母 抵消 magazine 的字母if (magazineMap.has(key) && magazineMap.get(key)) {magazineMap.set(key, magazineMap.get(key)! - 1);} else {// magazine 字母数不够,返回falsereturn false;}}return true;
}

http://www.lryc.cn/news/422885.html

相关文章:

  • Linux 常见的冷知识集锦
  • 【喜报】科大睿智祝贺青岛海信网络科技通过CMMI5级评估
  • 2024全国大学生电子设计大赛全国初赛 E题 三子棋游戏装置 一等奖满分最简方案
  • 尚品汇-ES(三十一)
  • NC 跳台阶
  • linux 文件编程
  • 【后端速成 Vue】实现动态表白墙
  • 【日常开发】 java返回ECharts数据结构封装
  • Table表格控件实现单选功能
  • AI技术加速落地 港科广联手思谋打开智能缺陷检测新纪元
  • Python爬虫开发:BeautifulSoup、Scrapy入门
  • 数据科学、数据分析、人工智能必备知识汇总-----常用数据分析方法-----持续更新
  • 学习vue Router 一 起步,编程式导航,历史记录,路由传参
  • Qt/C++最新地图组件发布/历时半年重构/同时支持各种地图内核/包括百度高德腾讯天地图
  • Laravel + Thinkphp 生成二维码
  • 2408C++,C++20的无侵入式反射
  • 抽象工厂模式(Abstract factory pattern)- python实现
  • adb Connection reset by peer的解决方法
  • 111111111
  • 搜维尔科技:Varjo XR-4使用UE5 打造最具沉浸感的混合现实环境
  • 从分散到集中:TSINGSEE青犀EasyCVR视频汇聚网关在视频整体监控解决方案中的整合作用
  • React学习-jsx语法
  • uniapp多图上传uni.chooseImage上传照片uni.uploadFile
  • 鸿蒙(API 12 Beta2版)媒体开发【处理音频焦点事件】
  • c语言第12天
  • 回归预测|一种多输入多输出的粒子群优化支持向量机数据回归预测Matlab程序PSO-MSVR非for循环实现 原理上进行修改多输出
  • 《花100块做个摸鱼小网站! 》第二篇—后端应用搭建和完成第一个爬虫
  • Mapreduce_csv_averageCSV文件计算平均值
  • 将UEC++项目转码成UTF-8
  • 深入探索MySQL C API:使用C语言操作MySQL数据库