代码随想录算法训练营第六天| 242 有效的字母异位词 349 两个数组的交集 202 快乐数 1 两数之和

目录

242 有效的字母异位词

349 两个数组的交集

202 快乐数

1 两数之和


242 有效的字母异位词

排序

class Solution {
public:bool isAnagram(string s, string t) {sort(s.begin(),s.end());sort(t.begin(),t.end());return t == s;}
};

时间复杂度O(nlogn)

空间复杂度O(logn)

哈希表 

class Solution {
public:bool isAnagram(string s, string t) {if(s.size() != t.size())return false;vector<int>table(26,0);for(char ch : s){table[ch - 'a']++;}for(char ch : t){table[ch - 'a']--;if(table[ch - 'a'] < 0)return false;}return true;}
};

时间复杂度O(n + m)

空间复杂度O(s)s = 26

349 两个数组的交集

class Solution {
public:vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {vector<int>res;unordered_set<int>set1,set2;for(auto num : nums1){set1.insert(num);}for(auto num : nums2){set2.insert(num);}for(auto num : set1){if(set2.count(num) > 0){res.push_back(num);}}return res;}
};

时间复杂度O(n + m)

空间复杂度O(n + m)

202 快乐数

 暴力

class Solution {
public:bool isHappy(int n) {for(int i = 0;i < 100;i++){int res;while(n){int num = n % 10;n /= 10;res += num * num;}n = res;res = 0;if(n == 1)return true;}return false;}
};

哈希表

class Solution {
public:bool isHappy(int n) {unordered_set<int>set;while(n != 1 && !set.count(n)){set.insert(n);int sum = 0;while(n){sum += (n % 10)* (n % 10);n /= 10;}n = sum;}if(n == 1)return true;return false;}
};

时间复杂度O(logn)

空间复杂度O(logn) 

1 两数之和

class Solution {
public:vector<int> twoSum(vector<int>& nums, int target) {unordered_map<int,int>table;for(int i = 0;i < nums.size();i++){auto iterator = table.find(target - nums[i]);if(iterator != table.end()){return {iterator->second,i};}table[nums[i]] = i;}return {};}
};

时间复杂度O(n)

空间复杂度O(n) 

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

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

相关文章

Apache Flink 1.15正式发布

Apache Flink 核心概念之一是流 (无界数据) 批 (有界数据) 一体。 流批一体极大的降低了流批融合作业的开发复杂度。在过去的几个版本中&#xff0c;Flink 流批一体逐渐成熟&#xff0c;Flink 1.15 版本中流批一体更加完善&#xff0c;后面我们也将继续推动这一方向的进展。目…

mysql原理--事务的隔离级别与 MVCC

1.事前准备 为了故事的顺利发展&#xff0c;我们需要创建一个表&#xff1a; CREATE TABLE hero (number INT,name VARCHAR(100),country varchar(100),PRIMARY KEY (number) ) EngineInnoDB CHARSETutf8;然后向这个表里插入一条数据&#xff1a;INSERT INTO hero VALUES(1, 刘…

Nginx笔记

安装Nginx docker pull nginx # 下载nginx docker run \ --name nginx \ -p 80:80 \ -d \ nginx # 测试容器的运行 mkdir -p /data/nginx/conf mkdir -p /data/nginx/www mkdir -p /data/nginx/logs docker cp nginx:/etc/nginx/nginx.conf /data/nginx docker cp nginx:/e…

排序-冒泡排序

冒泡排序 ●第一步 从左到右&#xff0c;两两比较&#xff0c;将最大的数放在数组的最后一位(即下标n-1的位置) ●第二步 采用相同的方法&#xff0c;再次遍历&#xff0c;将第二大的数&#xff0c;放在数组倒数第二的位置(即n-2的位置)&#xff0c;以此类推,直至数组有序。 …

如何才能拥有比特币 - 01 ?

如何才能拥有BTC 在拥有 BTC 之前我们要先搞明白 BTC到底保存在哪里&#xff1f;我的钱是存在银行卡里的&#xff0c;那我的BTC是存在哪里的呢&#xff1f; BTC到底在哪里&#xff1f; 一句话概括&#xff0c;BTC是存储在BTC地址中&#xff0c;而且地址是公开的&#xff0c;…

【Python 千题 —— 基础篇】喜欢的水果

题目描述 题目描述 我们调查了班上的三名同学(Alan,Bob,Sandy)喜欢的水果,其中组成了以下键值对:‘Alan’: [‘apple’, ‘banana’, ‘orange’],‘Bob’: [‘banana’, ‘grapes’, ‘peach’],‘Sandy’: [‘apple’, ‘pear’, ‘strawberry’, ‘banana’]。 对…

Java并发编程: 常用的分布式锁总结

一、基于MySQL的分布式锁 主要利用到了MySQL中select for update操作来达到互斥的效果。 public static <T> T lockWithMutex(String lockName, DataSource dataSource, Callable<T> runnable) throws Exception {Connection connection null;boolean autoComm…

CopyOnWriteArrayList介绍

二、CopyOnWriteArrayList 2.1 CopyOnWriteArrayList介绍 CopyOnWriteArrayList是一个线程安全的ArrayList。 CopyOnWriteArrayList是基于lock锁和数组副本的形式去保证线程安全。 在写数据时&#xff0c;需要先获取lock锁&#xff0c;需要复制一个副本数组&#xff0c;将数…

HTML111111111

在线编辑器 在线 HTML 空元素 没有内容的 HTML 元素被称为空元素。空元素是在开始标签中关闭的。 即使 在所有浏览器中都是有效的&#xff0c;但使用 其实是更长远的保障。 HTML 水平线 标签在 HTML 页面中创建水平线。 hr 元素可用于分隔内容。 HTML 折行 如果您希望…

CentOS上安装Mellanox OFED

打开Mellanox官网下载驱动 Linux InfiniBand Drivers 点击下载链接跳转至 Tgz解压缩执行 ./mlnxofedinstall发现缺少模块 # ./mlnxofedinstall Logs dir: /tmp/MLNX_OFED_LINUX.11337.logs General log file: /tmp/MLNX_OFED_LINUX.11337.logs/general.log Verifying KMP rpm…

IPv6测试指标包括哪些方面?如何去测试IPv6?(国科云)

我国高度重视IPv6的发展建设&#xff0c;将IPv6视作未来互联网发展的方向之一&#xff0c;从2017年《推进互联网协议第六版&#xff08;IPv6&#xff09;规模部署行动计划》印发以来&#xff0c;又多次发布IPv6相关的政策法规&#xff0c;以推进IPv6的规模化部署。在政策引导和…

【分布式技术】Elastic Stack部署,实操logstash的过滤模块常用四大插件

目录 一、Elastic Stack&#xff0c;之前被称为ELK Stack 完成ELK与Filebeat对接 步骤一&#xff1a;安装nginx做测试 步骤二&#xff1a;完成filebeat二进制部署 步骤三&#xff1a;准备logstash的测试文件filebeat.conf 步骤四&#xff1a;完成实验测试 二、logstash拥有…

时序分解 | Matlab实现CEEMDAN+PE自适应噪声完备集合经验模态分解+排列熵计算

时序分解 | Matlab实现CEEMDANPE自适应噪声完备集合经验模态分解排列熵计算 目录 时序分解 | Matlab实现CEEMDANPE自适应噪声完备集合经验模态分解排列熵计算效果一览基本介绍程序设计参考资料 效果一览 基本介绍 CEEMDANPE自适应噪声完备集合经验模态分解排列熵计算 运行环境m…

云轴科技ZStack 助力广西某地级市建设市级警务云视频系统

某市属于广西壮族自治区辖地级市&#xff0c;省域副中心城市&#xff0c;选择云轴科技ZStack 超融合解决方案支撑警务云视频监控联网管理系统&#xff08;警务云视频系统&#xff09;&#xff0c;实现了该市对各辖区视频资源统一管理&#xff1b;同时也满足了该市警务云视频系统…

Git教程学习:01 Git简介与安装

目录 1 版本控制1.1 什么是版本控制系统&#xff1f;1.2 本地版本控制系统1.3 集中式版本控制系统1.4 分布式版本控制系统 2 Git简史3 Git的安装3.1 在Linux上安装3.2 初次运行Git前的配置 1 版本控制 1.1 什么是版本控制系统&#xff1f; 版本控制系统(Version Control Syst…

2.【C语言】(函数指针||sizeof||笔试题)

0x01.函数指针 void test(const char* str) {printf("%s\n", str); }int main() {void (*pf)(const char*) test;//pf是函数指针变量void (*pfarr[10])(const char*);//pfarr是存放函数指针的数组void (*(*p)[10])(const char*) &pfarr;//p是指向函数指针数组…

C++编译:明明设置了链接库,但链接时找不到符号 undefined reference to ....

原因可能是库编译是的g环境与当前环境不同&#xff0c;比如 库编译时的glibc版本为2.17而当前的glibc版本为2.31 查看glibc版本&#xff1a;ldd --version

时空预测 | 基于图神经网络的时空预测

引言 时间序列是用于记录动态系统测量的主要数据类型&#xff0c;由物理传感器和在线过程&#xff08;虚拟传感器&#xff09;大量生成。因此&#xff0c;时间序列分析对于解锁可用数据中隐含的信息财富至关重要。随着图神经网络&#xff08;GNNs&#xff09;的最新进展&#x…

PHP 调用 e 签宝接口签名指南

前言 在 401 问题上卡了 一段时间&#xff0c;参考官网文档和鉴权签名计算测试也试了很久&#xff0c;签名确定是没错的&#xff0c;但是一直提示 INVALID_SIGNATURE 其实问题在于我忽略了 公共请求头格式 中 Content-MD5 部分的一句话&#xff1a; GET 和 DELETE 请求且 Bod…

根据基因名批量查找它的Uniprot编号

背景&#xff1a; 前几天老师交给我一个任务&#xff0c;给我一个基因列表&#xff0c;让我查找它们所编码的蛋白质的蛋白质序列。我上了一下uniprot数据库&#xff0c;发现这个任务可以分成两步&#xff1a; 找到这个基因在Uniprot数据库中所对应的蛋白质编码根据蛋白质编码…