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

Hot100之哈希

1两数之和

题目

思路解析

解法1--两次循环

解法2--哈希表一次循环

代码

解法1--两次循环
class Solution {public int[] twoSum(int[] nums, int target) {int nums1[] = new int[2];int length = nums.length;for (int i = 0; i < length; i++) {for (int j = i + 1; j < length; j++) {if (nums[i] + nums[j] == target) {nums1[0] = i;nums1[1] = j;return nums1;}}}return nums1;}
}
解法2--哈希表一次循环
import java.util.HashMap;
import java.util.Map;class Solution {public int[] twoSum(int[] nums, int target) {Map<Integer, Integer> map = new HashMap<>();for (int i = 0; i < nums.length; i++) {int complement = target - nums[i];if (map.containsKey(complement)) {return new int[]{map.get(complement), i};}map.put(nums[i], i);}return new int[]{};}
}

49字母异位词分组 

题目

思路解析

我们利用一个Map结构Map<String,List>

然后我们把字符串String变成我们的char【】数组,然后Arrays.sort()对字符数组进行排序

将排序后的字符数组变成String放到Map中(这样子就能保证ate,eat,tea的value就是排序后的字符数组aet)

最后通过return new ArrayList(map.values()),将Map中的所有键值对构造成List

代码

class Solution {public List<List<String>> groupAnagrams(String[] strs) {if (strs.length == 0 || strs == null) {return new ArrayList();}Map<String, List> map = new HashMap<String, List>();for (String s : strs) {// 将字符串转化为字符数组char[] chars = s.toCharArray();// 对字符数组按照字母顺序排序Arrays.sort(chars);// 将排序后的字符串作为哈希表中的key值String key = String.valueOf(chars);// 判断哈希表中是否有该key值if (!map.containsKey(key)) {// 若不存在,则为新的异位词语,在map中创建新的键值对map.put(key, new ArrayList());}// 将该字符串放在对应key的list中map.get(key).add(s);}// 返回map中所有键值对象构成的listreturn new ArrayList(map.values());}
}

 


128最长连续数列

题目

思路解析

我们通过Set结构的contains()来看看是否有连续的变量

我们开始计算的条件是:我们该元素-1不存在,说明这就是连续递增元素的头,我们从这个开始计算

如果我们前面元素存在,说明这个元素不是连续递增元素的头,我们要求最长连续数列,所以没必要计算

        for (int num : set) {// 说明不会重复,因为1,2,3,4我们已经算完了,我们还从2,3,4算起就没必要了// 因为我的最长已经从第一个最小数字开始算出来了//所以我们在元素x的时候,如果我们的元素x-1不存在,说明前面没有连续的,我们在x开始遍历//如果我们的元素x-1存在,说明它不是连续递增的头,所以没必要遍历if (!set.contains(num - 1)) {int currentNum = num; // 一个变量用来++int currentMax = 1;while (set.contains(currentNum + 1)) {currentNum++;currentMax++;}maxlength = Math.max(maxlength, currentMax);}}

代码

class Solution {public int longestConsecutive(int[] nums) {// 利用Set结构,把数字都放到Set结构里面Set<Integer> set = new HashSet<Integer>();for (int num : nums) {set.add(num);}int maxlength = 0;for (int num : set) {// 说明不会重复,因为1,2,3,4我们已经算完了,我们还从2,3,4算起就没必要了// 因为我的最长已经从第一个最小数字开始算出来了//所以我们在元素x的时候,如果我们的元素x-1不存在,说明前面没有连续的,我们在x开始遍历//如果我们的元素x-1存在,说明它不是连续递增的头,所以没必要遍历if (!set.contains(num - 1)) {int currentNum = num; // 一个变量用来++int currentMax = 1;while (set.contains(currentNum + 1)) {currentNum++;currentMax++;}maxlength = Math.max(maxlength, currentMax);}}return maxlength;}
}

相关文章:

Hot100之哈希

1两数之和 题目 思路解析 解法1--两次循环 解法2--哈希表一次循环 代码 解法1--两次循环 class Solution {public int[] twoSum(int[] nums, int target) {int nums1[] new int[2];int length nums.length;for (int i 0; i < length; i) {for (int j i 1; j < …...

油漆面积——蓝桥杯

1.题目描述 X 星球的一批考古机器人正在一片废墟上考古。 该区域的地面坚硬如石、平整如镜。 管理人员为方便&#xff0c;建立了标准的直角坐标系。 每个机器人都各有特长、身怀绝技。它们感兴趣的内容也不相同。 经过各种测量&#xff0c;每个机器人都会报告一个或多个矩…...

深度解析:网站快速收录与服务器性能的关系

本文转自&#xff1a;百万收录网 原文链接&#xff1a;https://www.baiwanshoulu.com/37.html 网站快速收录与服务器性能之间存在着密切的关系。服务器作为网站运行的基础设施&#xff0c;其性能直接影响到搜索引擎对网站的抓取效率和收录速度。以下是对这一关系的深度解析&am…...

925.长按键入

目录 一、题目二、思路三、解法四、收获 一、题目 你的朋友正在使用键盘输入他的名字 name。偶尔&#xff0c;在键入字符 c 时&#xff0c;按键可能会被长按&#xff0c;而字符可能被输入 1 次或多次。 你将会检查键盘输入的字符 typed。如果它对应的可能是你的朋友的名字&am…...

JavaScript 中的 var 和 let :关键区别与使用建议

在 JavaScript 开发中&#xff0c;变量声明是基础且重要的部分。 var 和 let 都是用于声明变量的关键字&#xff0c;但它们在作用域、变量提升、重复声明等方面存在显著差异。本文将详细探讨它们的区别&#xff0c;并给出使用建议。 1. 作用域 1.1 var 的作用域 …...

寒假刷题Day19

一、923. 三数之和的多种可能 class Solution { public:int threeSumMulti(vector<int>& arr, int target) {const int MOD 1000000007; // 正确的模数long long ans 0; // 使用 long long 防止溢出std::sort(arr.begin(), arr.end());for (size_t i 0; i < a…...

写好简历的三个关键认知

在当今竞争激烈的就业市场中&#xff0c;一份优秀的简历往往是敲开理想企业大门的第一把钥匙。然而&#xff0c;很多求职者在写简历时往往不得要领&#xff0c;让宝贵的机会从指间溜走。今天&#xff0c;让我们一起探讨如何提升简历写作水平&#xff0c;让你的职业之路走得更顺…...

工具的应用——安装copilot

一、介绍Copilot copilot是一个AI辅助编程的助手&#xff0c;作为需要拥抱AI的程序员可以从此尝试进入&#xff0c;至于好与不好&#xff0c;应当是小马过河&#xff0c;各有各的心得。这里不做评述。重点在安装copilot的过程中遇到了一些问题&#xff0c;然后把它总结下&…...

Koa 基础篇(二)—— 路由与中间件

let app new Koa() router.get(“/”,async ctx > { ctx.body “hello koa router” }) app.use(router.routes()) app.use(router.allowedMethods()) app.listen(3000) 运行项目&#xff0c;在浏览器访问本地3000端口&#xff0c;在页面上就会看到输出的语句。这就…...

帆软 FCA -业务分析师认证学习

帆软 FCA -业务分析师认证学习 认证概述 适合人群 企业中有需求管理、指标梳理、业务逻辑梳理、项目规划等需求的人员&#xff0c;想提升综合数据能力、推进数据应用落地的业务/IT骨干。 具体-FCA-业务分析理论 考试要求&#xff1a; FCA-业务分析理论考试- 费用&#xff1a…...

Miniconda 安装及使用

文章目录 前言1、Miniconda 简介2、Linux 环境说明2.1、安装2.2、配置2.3、常用命令2.4、常见问题及解决方案 前言 在 Python 中&#xff0c;“环境管理”是一个非常重要的概念&#xff0c;它主要是指对 Python 解释器及其相关依赖库进行管理和隔离&#xff0c;以确保开发环境…...

solidity高阶 -- Eth支付

在区块链的世界里&#xff0c;智能合约是实现去中心化应用&#xff08;DApp&#xff09;的核心技术之一。Solidity 是一种专门用于编写以太坊智能合约的编程语言&#xff0c;它可以帮助开发者构建各种功能&#xff0c;包括支付功能。 今天&#xff0c;我们就来探讨如何使用 Sol…...

深入理解Java中的String

前言 在Java中&#xff0c;String类是一个非常重要的内置类&#xff0c;用于处理字符串数据。字符串是不可变的&#xff08;immutable&#xff09;&#xff0c;这意味着一旦创建&#xff0c;字符串的内容不能被修改。作为Java中最为基础和常用的类之一&#xff0c;String类在内…...

洛谷 P1734 最大约数和 C语言

P1734 最大约数和 - 洛谷 | 计算机科学教育新生态 题目描述 选取和不超过 S 的若干个不同的正整数&#xff0c;使得所有数的约数&#xff08;不含它本身&#xff09;之和最大。 输入格式 输入一个正整数 S。 输出格式 输出最大的约数之和。 输入输出样例 输入 #1复制 …...

Golang 执行流程分析

文章目录 1. 编译和运行2. 编译和运行说明 1. 编译和运行 如果是对源码编译后&#xff0c;再执行&#xff0c;Go的执行流程如下图 如果我们是对源码直接 执行 go run 源码&#xff0c;Go的执行流程如下图 两种执行流程的方式区别 如果先编译生成了可执行文件&#xff0c;那么…...

python学opencv|读取图像(五十一)使用修改图像像素点上BGR值实现图像覆盖效果

【1】引言 前序学习了图像的得加方法&#xff0c;包括使用add()函数直接叠加BGR值、使用bitwise()函数对BGR值进行按位计算叠加和使用addWeighted()函数实现图像加权叠加至少三种方法。文章链接包括且不限于&#xff1a; python学opencv|读取图像&#xff08;四十二&#xff…...

Flask数据的增删改查(CRUD)_flask删除数据自动更新

查询年龄小于17的学生信息 Student.query.filter(Student.s_age < 17) students Student.query.filter(Student.s_age.__lt__(17))模糊查询&#xff0c;使用like&#xff0c;查询姓名中第二位为花的学生信息 like ‘_花%’,_代表必须有一个数据&#xff0c;%任何数据 st…...

kamailio-ACC模块介绍【kamailio6.0. X】

Acc 模块 作者 Jiri Kuthan iptel.org jiriiptel.org Bogdan-Andrei Iancu Voice Sistem SRL bogdanvoice-system.ro Ramona-Elena Modroiu rosdev.ro ramonarosdev.ro 编辑 Bogdan-Andrei Iancu Voice Sistem SRL bogdanvoice-system.ro Sven Knoblich 1&1 Internet …...

数据库对象

数据库对象 数据库对象是构成数据库结构的基本单位&#xff0c;它们定义了数据库存储的数据类型、数据的组织方式以及数据之间的关系。在数据库中&#xff0c;对象可以包括表&#xff0c;视图&#xff0c;索引&#xff0c;触发器&#xff0c;存储过程&#xff0c;函数等多种类…...

EtherCAT主站IGH-- 27 -- IGH之globals.h文件解析

EtherCAT主站IGH-- 27 -- IGH之globals.h文件解析 0 预览一 该文件功能宏定义数据结构打印宏三 h文件翻译四 c文件翻译该文档修改记录:总结0 预览 一 该文件功能 该文件包含了一些全局定义和宏,用于 IgH EtherCAT 主站(EtherCAT Master)的实现。包括了一些超时设定、宏定义…...

桌面级机械臂DIY全攻略:从运动学建模到PID控制实战

1. 项目概述&#xff1a;一个桌面级机械臂的诞生最近在逛GitHub的时候&#xff0c;发现了一个挺有意思的项目&#xff0c;叫“ClawPuter”。光看名字&#xff0c;你可能会有点摸不着头脑&#xff0c;Claw是爪子&#xff0c;Puter是计算机&#xff0c;合起来是“爪式计算机”&am…...

终极指南:如何用UniversalSplitScreen在一台电脑上玩多人游戏

终极指南&#xff1a;如何用UniversalSplitScreen在一台电脑上玩多人游戏 【免费下载链接】UniversalSplitScreen Split screen multiplayer for any game with multiple keyboards, mice and controllers. 项目地址: https://gitcode.com/gh_mirrors/un/UniversalSplitScree…...

TVA 在宠物混合监护场景中的创新应用(4)

重磅预告&#xff1a;本专栏将独家连载新书《智能体视觉技术与应用》&#xff08;系列丛书&#xff09;部分精华内容&#xff0c;该书是世界首套系统阐述“因式智能体”视觉理论与实践的专著&#xff0c;特邀美国 TypeOne 公司首席科学家、斯坦福大学博士 Bohan 担任技术顾问。…...

Zenko CloudServer高可用部署:集群配置与负载均衡方案

Zenko CloudServer高可用部署&#xff1a;集群配置与负载均衡方案 【免费下载链接】cloudserver Zenko CloudServer, an open-source Node.js implementation of the Amazon S3 protocol on the front-end and backend storage capabilities to multiple clouds, including Azu…...

AI驱动GitHub仓库分析:从数据到洞察的工程实践

1. 项目概述&#xff1a;一个面向开发者的AI驱动GitHub分析工具最近在GitHub上发现一个挺有意思的项目&#xff0c;叫instagit&#xff0c;来自InstalabsAI这个组织。乍一看名字&#xff0c;可能会联想到Instagram或者某种社交工具&#xff0c;但实际上&#xff0c;它是一个完全…...

YOLOv8植物病害识别检测系统(项目源码+YOLO数据集+模型权重+UI界面+python+深度学习+环境配置)

摘要 植物病害是威胁全球农业产量与质量的主要因素之一&#xff0c;传统的人工识别方法依赖专家经验&#xff0c;效率低、主观性强。本文基于YOLOv8目标检测算法&#xff0c;构建了一套涵盖30类植物及其叶片病害的检测系统&#xff0c;包括苹果、玉米、马铃薯、番茄、葡萄等主…...

服务器电源线选购全攻略

5选服务器电源线&#xff0c;接口匹配、电流承载、安全认证、线缆长度、线材材质五大要点缺一不可&#xff0c;劣质线材容易过载发热、烧毁设备&#xff0c;严重还会引发火灾&#xff0c;机房布线一定要选用靠谱的睿阜高品质电源线。先对接口&#xff1a;物理适配是第一关键&am…...

涿州靠谱软体沙发家具城,为你打造舒适家居的理想之选!

在涿州&#xff0c;选择一家靠谱的软体沙发家具城至关重要&#xff0c;它不仅关系到家居的舒适度&#xff0c;还影响着生活品质。今天就为大家推荐涿州市雅木轩家具店&#xff08;简称&#xff1a;旭日家具&#xff09;&#xff0c;并将它与其他大厂进行对比&#xff0c;让你更…...

Panda-AGI开源框架:构建具备长期记忆与规划能力的AI智能体

1. 项目概述&#xff1a;当“熊猫”遇上AGI&#xff0c;一个开源智能体的新范式最近在开源社区里&#xff0c;一个名为sinaptik-ai/panda-agi的项目引起了我的注意。光看名字就很有意思&#xff0c;“Panda”和“AGI”&#xff08;Artificial General Intelligence&#xff0c;…...

基于Adafruit Trinket的光控互动玩具:嵌入式系统入门实战

1. 项目概述&#xff1a;给毛绒玩具注入灵魂几年前&#xff0c;我女儿的一个旧毛绒玩具被冷落在角落&#xff0c;除了偶尔被当作抱枕&#xff0c;几乎失去了“玩具”的活力。这让我萌生了一个想法&#xff1a;能不能用一些简单的电子元件&#xff0c;让这些静态的玩偶重新“活”…...