【算法与数据结构】383、LeetCode赎金信

news2024/11/25 4:32:44

文章目录

  • 一、题目
  • 二、解法
  • 三、完整代码

所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。

一、题目

在这里插入图片描述

二、解法

  思路分析:这道题的思路和242、有效的字母异位词的思路一样
  程序如下

class Solution {
public:
	bool canConstruct(string ransomNote, string magazine) {
		if (ransomNote.size() > magazine.size()) return false;
		int ABCTable[26] = { 0 };
		for (int i = 0; i < ransomNote.size(); i++) {
			ABCTable[ransomNote[i] - 'a']++;
		}
		for (int i = 0; i < magazine.size(); i++) {
			ABCTable[magazine[i] - 'a']--;
		}
		for (int i = 0; i < 26; i++) {
			if (ABCTable[i] > 0) return false;
		}
		return true;
	}
};

复杂度分析:

  • 时间复杂度: O ( n ) O(n) O(n)
  • 空间复杂度: O ( 1 ) O(1) O(1)

三、完整代码

# include <iostream>
# include <string>
using namespace std;

class Solution {
public:
	bool canConstruct(string ransomNote, string magazine) {
		if (ransomNote.size() > magazine.size()) return false;
		int ABCTable[26] = { 0 };
		for (int i = 0; i < ransomNote.size(); i++) {
			ABCTable[ransomNote[i] - 'a']++;
		}
		for (int i = 0; i < magazine.size(); i++) {
			ABCTable[magazine[i] - 'a']--;
		}
		for (int i = 0; i < 26; i++) {
			if (ABCTable[i] > 0) return false;
		}
		return true;
	}
};

int main()
{
	string ransomNote = "aa";
	string magazine = "ab";
	Solution s1;
	bool result = s1.canConstruct(ransomNote, magazine);
	cout << result << endl;
	system("pause");
	return 0;
}

end

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/661687.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

好好存钱,是成年人最顶级的自律

作者| Mr.K 编辑| Emma 来源| 技术领导力(ID&#xff1a;jishulingdaoli) 王尔德说&#xff1a;“在我年轻的时候&#xff0c;曾以为金钱是世界上最重要的东西。现在我老了&#xff0c;才知道的确如此。” 路遥说&#xff1a;“钱是好东西&#xff0c;它能使人不再心慌&#…

指纹识别工具WhatWeb使用教程,图文教程(超详细)

「作者主页」&#xff1a;士别三日wyx 「作者简介」&#xff1a;CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」&#xff1a;对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 WhatWeb 一、扫描网站指纹二、扫描强度三、扫描内网…

ZeroQuant-V2 LLM权重与激活量化

ref ZeroQuant-V2: Exploring Post-training Quantization in LLMs from Comprehensive Study to Low Rank Compensation 4bit量化为什么重要 The case for 4-bit precision: k-bit Inference Scaling Laws 这篇文章研究表明4bit通常是最优的量化方法&#xff1a;同样的量化…

快速选择合适的GNSS模拟器,看这几个重点

为了正确测试GNSS接收器或其他任何依赖GNSS信号的系统或设备&#xff0c;工程师需要模拟与真实卫星广播相同的RF信号&#xff0c;而使用GNSS模拟器是实现这一工作的最佳选择。 假设正在开发一种需要集成GNSS接收器的新产品&#xff0c;想要验证接收器设备在不同条件下是否运行…

企业为什么要关注库存?因为那都是“钱”!

库存是企业管理的核心&#xff0c;公司必须提供足够的商品来满足客户需求&#xff0c;但又不能冒着浪费金钱和资源的风险&#xff0c;一味的增加库存。 不同的企业在库存管理这个问题上就“八仙过海各显神通”了&#xff0c;常见的处理方法有&#xff1a; 1. 经验法&#xff1a…

求两数之和

必应壁纸供图 题目描述 两数之和 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案里不…

基于SpringBoot+Vue的学生毕业离校系统设计与实现

博主介绍&#xff1a; 大家好&#xff0c;我是一名在Java圈混迹十余年的程序员&#xff0c;精通Java编程语言&#xff0c;同时也熟练掌握微信小程序、Python和Android等技术&#xff0c;能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架下…

Sui x KuCoin Labs夏季黑客松首批入围项目公布

经过一段时间的共同努力&#xff0c;我们已经完成了对Sui x KuCoin Labs夏季黑客松第一批入围项目的审核&#xff0c;并宣布以下团队已入围最终demo day&#xff1a; 首批入围名单 Desig Protocol Desig协议提供了一种与区块链无关&#xff08;无智能合约&#xff09;的多重…

聚观早报|奔驰接入ChatGPT聊天机器人;极兔速递提交上市申请书

今日要闻&#xff1a;奔驰接入ChatGPT聊天机器人&#xff1b;极兔速递向港交所提交上市申请书&#xff1b;微软股价创历史新高&#xff1b;美电动卡车Nikola宣布裁员23%&#xff1b;马斯克&#xff1a;人工智能具有颠覆性 奔驰接入ChatGPT聊天机器人 梅赛德斯 - 奔驰表示&…

Doris 扩缩容和副本均衡

扩缩容和副本均衡 ​ 对于集群节点发生变化&#xff08;扩缩容&#xff09;时&#xff0c;集群内部的tablet是如何以一定的策略完成数据的重分布&#xff0c;从而达到每个be能够分布尽可能数量相同的tablet。同时&#xff0c;集群内部某些tablet由于某些原因发生损坏时&#x…

快手web验证日志分析

文章目录 log参数session_ididentityproject_id 流程1-4请求参数sign日志formdata828586 log参数 为了确定日志中是否有参数和IP绑定&#xff0c;检查了session_id参数。 session_id session_id i (wn[e[t 0]] wn[e[t 1]] wn[e[t 2]] wn[e[t 3]] "-" wn…

rk3568 长按电源键关机修改

rk3568 电源键强制关机触发时间修改 Rockchip系列主控芯片配套PMIC支持长按电源键强制关闭PMU&#xff0c;也就是标题中的强制关机。rk3568使用I2C通信与PMIC(rk809/rk817)&#xff0c;power(电源)键则是与PMIC相连&#xff0c;PMIC监测按键状态控制RK3568的上下电&#xff0c;…

新增每日个股涨停原因及概念题材统计!股票量化分析工具QTYX-V2.6.6

功能概述 目前A股市场主旋律仍然是以行业及题材板块的热点轮动为主&#xff0c;因此从某种意义上来说&#xff0c;板块的强弱决定了选出个股的强弱。 我们的股票量化分析工具QTYX目前已经支持了统计行业板块内涨停板数量功能。‍ 为了进一步分析出市场上启动的热点概念题材。我…

vscode远程连接linux服务器

Linux服务器&#xff08;或虚拟机&#xff09;条件&#xff1a; 开启ssh服务 客户端&#xff1a; vscode 1.服务端 服务端需要开启ssh服务vscode才能连接&#xff0c;首先检验linux是否开启了ssh服务 systemctl status sshd servie sshd status 运行命令&#xff0c;如果可…

视频基础知识——编码时,帧率、码率、分辨率之间的联系

本文主要补充基础概念&#xff0c;在设置编码器的时候&#xff0c;参数设置不对&#xff0c;录制的屏幕就会出现花屏。所以梳理了基础知识&#xff0c;就知道哪里设置不对了。 如下是ffmpeg自带的sample&#xff0c;encode_video的例子&#xff0c;选取H264的编码器&#xff0c…

基于SpringBoot和协同过滤算法的体育商城系统的实现

最近帮小伙伴做了个基于SpringBoot和协同过滤算法的体育商城系统。 文章目录 一&#xff0c;SpingBoot介绍二&#xff0c;协同过滤算法介绍三&#xff0c;系统功能需求四&#xff0c;系统功能演示五&#xff0c;系统核心代码演示 一&#xff0c;SpingBoot介绍 现如今后台开源框…

企业寻求最大化投资回报率的24个社交媒体技巧

社交媒体营销不是银弹。它不会解决您所有的业务问题&#xff0c;也不会让您一夜成名。但是&#xff0c;如果您愿意投入时间和精力&#xff0c;社交媒体可以成为建立关系、建立信誉和发展业务的强大工具。 在这篇文章中&#xff0c;我们将分享24个社交媒体技巧&#xff0c;以帮…

React 演示Hook中发送网络请求

我这里本地用java写了个接口 当我访问 http://localhost:8080/books 就会发出一个无惨的 get请求 返回内容如下 这里 我返回了一个 json对象 然后 我们在react项目的src目录下创建setupProxy.js 参考代码如下 const proxy require(http-proxy-middleware)module.exports f…

您的Android密钥安全吗?一招教你安全加固

您的Android密钥安全吗&#xff1f;一招教你安全加固 你是否担心你的Android应用中的敏感数据会被披露出去&#xff1f;如果是的话&#xff0c;别担心&#xff0c;你并不是唯一一个有这样担忧的人。在今天的世界里&#xff0c;保护你的应用的URL和密钥免受逆向工程的风险变得比…

前端Vue图片上传组件支持单个文件多个文件上传 自定义上传数量 预览删除图片 图片压缩

前端Vue图片上传组件支持单个文件多个文件上传 自定义上传数量 预览删除图片 图片压缩&#xff0c; 下载完整代码请访问uni-app插件市场址:https://ext.dcloud.net.cn/plugin?id13099 效果图如下&#xff1a; ## 1.0.0&#xff08;2023-06-18&#xff09; 组件初始化 #### …