代码随想录day6| 242.有效的字母异位词 、349. 两个数组的交集、 202. 快乐数 、 1. 两数之和
代码随想录day6| 242.有效的字母异位词 、349. 两个数组的交集、 202. 快乐数 、 1. 两数之和
- 242.有效的字母异位词
- 思路
- 步骤
- 349. 两个数组的交集
- 思路
- 步骤
- 202. 快乐数
- 思路
- 步骤
- 1. 两数之和
- 思路
- 步骤
242.有效的字母异位词
思路
- 使用暴力解法时间复杂度为O(n^2)
- 这道题需要判断字母之前是否出现过,所以使用哈希法
- 由于字符使用asc||可以找出连续的规律(a=97),故可以使用数组来存放字母出现过的次数
步骤
- 先判断两个字符串长度是否相同,不同直接返回false;
- 创建一个长度为26的数组,来存放26个字母出现的次数
- 遍历字符串长度,第一个字符串出现的字母对应的位置每次加一;另一个字符串字母出现的位置每次减一
- 最后遍历数组,如果有位置不等于0,则返回false
- 数组中都为0,则返回true;
class Solution {public boolean isAnagram(String s, String t) {if(s.length() != t.length()){return false;}int[] arr = new int[26];for(int i = 0 ; i < s.length() ; i++){// System.out.print(s.charAt(i) - 97 + " ");arr[s.charAt(i) - 97]++;arr[t.charAt(i) - 97]--;}for(int i = 0 ; i < arr.length ; i++){System.out.print(arr[i] + " ");if(arr[i] != 0){return false;}}return true;}
}
349. 两个数组的交集
思路
- 改题目需要去重(交集结果中不能有重复数字),且返回不考虑输出结果的顺序,所以可以使用哈希法中的set集合
步骤
- 新建两个set集合,一个用来给nums1数组去重,另一个收集两个数组的交集
- 遍历nums1去重,收集在set1中
- 遍历nums2,如果set1中包含在元素,添加到resSet集合中
- 最后将收集的resSet转换为数组返回
class Solution {public int[] intersection(int[] nums1, int[] nums2) {Set<Integer> set1 = new HashSet<>();Set<Integer> resSet = new HashSet<>();//遍历数组1for (int i : nums1) {set1.add(i);}//遍历数组2的过程中判断哈希表中是否存在该元素for (int i : nums2) {if (set1.contains(i)) {resSet.add(i);}}return resSet.stream().mapToInt(x -> x).toArray();}}
202. 快乐数
思路
- 题目中说了会 无限循环,那么也就是说求和的过程中,sum会重复出现,这是无限循环结束的条件
- 判断是否重复出现可以使用set集合
- 具体思路
步骤
- 创建一个set集合判断是否重复
- 用while循环来寻找是否有符合的值,当n!=1并且n没有重复时就一直循环。
- 进入循环将n加入到set中,开始判断是否时快乐书操作,并且并且更新n的值。
- 循环结束判断n是否为1(是否为快乐数)
class Solution {public boolean isHappy(int n) {Set<Integer> record = new HashSet<>();while (n != 1 && !record.contains(n)) {record.add(n);n = getNextNumber(n);}return n == 1;}private int getNextNumber(int n) {int res = 0;while (n > 0) {int temp = n % 10;res += temp * temp;n = n / 10;}return res;}
}
1. 两数之和
思路
图文思路
步骤
- 创建一个map集合,key存放可能会被匹配的数,value中方这个数在数组中的位置。
- 用for循环来遍历数组,如果当前元素的能够匹配的数不在集合map中,则把该数放到map中,供其他数匹配
- 如果在map中找到能够匹配的数,则把这两个数的位置放到数组中返回
class Solution {public int[] twoSum(int[] nums, int target) {Map<Integer, Integer> map = new HashMap();int[] arr = new int[2];for(int i = 0 ; i < nums.length ; i++){if(map.containsKey(target-nums[i])){arr[0] = i;arr[1] = map.get(target-nums[i]);break;}map.put(nums[i],i);}return arr;}
}
相关文章:
代码随想录day6| 242.有效的字母异位词 、349. 两个数组的交集、 202. 快乐数 、 1. 两数之和
代码随想录day6| 242.有效的字母异位词 、349. 两个数组的交集、 202. 快乐数 、 1. 两数之和 242.有效的字母异位词思路步骤 349. 两个数组的交集思路步骤 202. 快乐数思路步骤 1. 两数之和思路步骤 242.有效的字母异位词 思路 使用暴力解法时间复杂度为O(n^2)这道题需要判断…...
《IDE 巧用法宝:使用技巧全解析与优质插件推荐》
在日常撸代码的时候,相信兄弟们在IDEA 中用到不少插件,利用插件,不仅可以提高工具效率,撸起代码来,也格外的娃哈哈…… 一、IntelliJ IDEA 作为一个资深 Java 程序员,除了 IDEA 中默认的插件,我…...
安全见闻---清风
注:本文章源于泷羽SEC,如有侵权请联系我,违规必删 安全见闻1 泷哥语录:安全领域什么都有,不要被表象所迷惑,无论技术也好还是其他方面也好,就是说学习之前,你得理解你要学的是什么…...
Python爬虫:urllib_post请求百度翻译(06)
#post的请求 import urllib.request import urllib.parse import jsonurl https://fanyi.baidu.com/sugheaders {user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36}data {kw : spider }#post请…...
GPIO输入和输出
参考视频:2.1 [GPIO]4种输出模式_哔哩哔哩_bilibili 输出:通过写0或者写1,控制引脚输出低电压或高电压。 输入:通过读取引脚是0还是1,判断引脚输入的是高电压还是低电压。 输出 推挽开漏通用通用输出推挽通用输出开漏…...
时序动作定位 | DDG-Net:弱监督时间动作定位的判别驱动图网络(ICCV 2023)
"><DDG-Net: Discriminability-Driven Graph Network for Weakly-supervised Temporal Action Localization> 代码:https://github.com/XiaojunTang22/ICCV2023-DDGNet 这篇论文探讨了弱监督时间动作定位(WTAL)任务,指出现有方法在特征提取时依赖于在其他数…...
mapbox没有token/token失效,地图闪烁后变空白,报错Error: A valid Mapbox access token is required to use Mapbox GL JS.
目录 mapbox没有token/token失效,地图闪烁后空白,报错Error: A valid Mapbox access token is required to use Mapbox GL JS. 一、问题描述 二、mapbox去除token验证 1、找到mapbox-gl文件夹 2、找到mapbox-gl.js文件 3、找到对应位置并修改 4、清…...
C#运动控制
在 C# 中实现运动控制主要涉及如何使用编程语言控制运动设备(如电机、伺服电机、传感器等)。以下是一些基本概念和示例,帮助你入门运动控制的编程。 1. 运动控制的基本概念 运动模型:了解运动的基本原理,包括线性运动…...
监控易监测对象及指标之:Kafka中间件JMX监控指标解读
监控易作为一款功能强大的监控软件,旨在为企业提供全方位的IT系统监控服务。其中,针对Kafka中间件的JMX监控是监控易的重要功能之一。本文将详细解读监控易中Kafka的JMX监控指标,帮助企业更好地理解并运用这些数据进行系统性能调优和故障排查…...
PDF文件为什么不能编辑是?是啥原因导致的,有何解决方法
PDF文件格式广泛应用于工作中,但有时候我们可能遇到无法编辑PDF文件的情况。这可能导致工作效率降低,特别是在需要修改文件内容时显得尤为棘手。遇到PDF不能编辑时,可以看看是否以下3个原因导致的。 一、文件受保护 有些PDF文件可能被设置了…...
海螺AI在人类表情刻画中的应用:技术与创新
引言 随着人工智能技术的不断发展,AI在人类表情刻画方面取得了重大突破。海螺AI(Conch AI)作为这一领域的领先技术,因其高度逼真的表情生成和细腻的情感表达能力,受到了广泛关注。本文将探讨海螺AI在人类表情刻画中的…...
【Python实战】几种打包python代码的方法!!!
Python是一种高级编程语言。因此,将Python代码打包成可执行文件(.exe)是一种非常有效的解决方案,能够使用户无需安装Python环境即可直接运行程序,从而提升使用体验。 1、pyinstaller 使用 PyInstaller 打包 Python 代…...
(已开源-ECCV2024)BEV检测模型-LabelDistill,使用真值进行知识蒸馏
项目链接:https://github.com/sanmin0312/LabelDistill (中文版翻译) 文章目录 1. Introduction & Related Work2. Method & Code3. Experiments3.1 Main Results3.2 Ablation Study 1. Introduction & Related Work 2. Method & Code 3. Experim…...
web前端第一次作业
以下为代码 <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title></head><body><form action"java-api.super-yx.com/register" method"post" enctype"multipart/form-…...
CMake 开发者手册
CMake 开发者手册 CMake 开发者手册一、介绍二、cmake 访问 Windows 注册表2.1 cmake 查询 Windows 注册表2.2 cmake 使用 Windows 注册表查找 3. find_package 查找模块3.1 cmake 查找模块的示例用法3.2 标准变量名称3.3 find_package 一个简单的查找模块示例 六、其他文章推荐…...
Redis入门:在Java程序中高效使用Redis
准备工作 下载windows版的Redis(自行查找网络资源) 解压到指定文件夹 如图所示:Redis的目录结构 redis本质上也是一个数据库,只不过经常被用作缓存 。redis分为服务端和客户端,先启动服务器redis-server,在…...
活着就好20241021
今日提醒:2024年10月21日,星期一,已是开工第247天。早安,摸鱼界的同仁们! 健康警钟:即便工作繁忙,也别忘了关爱自己。起身走走,茶水间、厕所、廊道都是好去处,毕竟&…...
阿里字节技术管理岗位面试要求
在阿里巴巴等互联网公司,技术管理岗(如技术团队负责人 TL 或 P8/P9 级别的职位)面试具有较高的技术要求和管理能力的考核。面试的问题和侧重点通常包括技术深度、架构设计、团队管理、项目推动等多方面。以下是一些常见的面试问题类型、侧重点…...
MySQL !=NULL 与IS NOT NULL
1、! 与<>比较 在MySQL中 ! 和 <> 的功能一致,在sql92规范中建议是:!,新的规范中建议为: <> 2、!NULL 与IS NOT NULL 比较 先说结论:默认情况下做比较条件时使用关键字“IS NULL”和“IS NOT NULL”࿱…...
[Unity Demo]从零开始制作空洞骑士Hollow Knight第十六集(上篇):制作更多地图,更多敌人,更多可交互对象
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、第一个代表性场景 1.制作敌人僵尸跳跳虫更多敌人2.制作敌人阿斯匹德更多可交互对象3.制作敌人孵化虫和它的孩子二、第二个代表性场景 1.制作更多敌人2.制作…...
接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?
在建筑行业,项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升,传统的管理模式已经难以满足现代工程的需求。过去,许多企业依赖手工记录、口头沟通和分散的信息管理,导致效率低下、成本失控、风险频发。例如&#…...
【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...
华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验
系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...
uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...
如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...
学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...
