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

力扣-两数之和

文章目录

    • 题目
    • 题解
      • 方法1-暴力
      • 方法2-哈希

题目

原题链接:两数之和

在这里插入图片描述

题解

方法1-暴力

我最先想到的方法就是暴力,两层for循环,也能通过。(拿到算法题在没有思路的时候暴力就是思路,哈哈哈)

public class T1 {public static int[] twoSum(int[] nums, int target) {for (int i = 0; i < nums.length; i++) {for (int j = i+1; j < nums.length; j++) {if(nums[i]+nums[j]==target){return new int[]{i,j};}}}return null; //这行代码没用  不写不行 随便返回一个数组即可}public static void main(String[] args) {int[] nums = {2,7,11,15};int target = 9;int[] res = twoSum(nums, target);System.out.println(Arrays.toString(res));}
}

方法2-哈希

在这里插入图片描述


public class T1 {public static int[] twoSum(int[] nums, int target) {Map<Integer, Integer> map = new HashMap<>();for (int i = 0; i < nums.length; i++) {if(map.containsKey(target-nums[i])){return new int[]{i, map.get(target-nums[i])};}map.put(nums[i],i);}return null;}public static void main(String[] args) {int[] nums = {2,7,11,15};int target = 9;int[] res = twoSum(nums, target);System.out.println(Arrays.toString(res));}
}

使用哈希表:

  • 使用HashMap来存储数组中的每一个数和它的索引。
  • 在遍历数组时,对于每个数,计算其补数(即target - nums[i]),并检查这个补数是否在哈希表中。
  • 如果补数存在,直接返回它的索引和当前数的索引

可能刚开始接触有点疑惑。
用两个for,可能更容易看懂,时间复杂度不变O(n)

    public static int[] twoSum(int[] nums, int target) {Map<Integer, Integer> map = new HashMap<>();for (int i = 0; i < nums.length; i++) {map.put(nums[i],i);}for (int i = 0; i < nums.length; i++) {if(map.containsKey(target-nums[i])){return new int[]{i, map.get(target-nums[i])};}}return null;}

打算现在开始坚持平均每天至少一道算法题,写出自己的做题思路想法,欢迎你们指点,我也喜欢和你们交流,多交流可以让自己有更深的理解,开阔自己的思维。多刷算法题可以锻炼自己编程思维,编程能力。


❤觉得有用的可以留个关注❤

相关文章:

力扣-两数之和

文章目录 题目题解方法1-暴力方法2-哈希 题目 原题链接&#xff1a;两数之和 题解 方法1-暴力 我最先想到的方法就是暴力&#xff0c;两层for循环&#xff0c;也能通过。&#xff08;拿到算法题在没有思路的时候暴力就是思路&#xff0c;哈哈哈&#xff09; public class T…...

基于CDMA的多用户水下无线光通信(3)——解相关多用户检测

继续上一篇博文&#xff0c;本文将介绍基于解相关的多用户检测算法。解相关检测器的优点是因不需要估计各个用户的接收信号幅值而具有抗远近效应的能力。常规的解相关检测器有运算量大和实时性差的缺点&#xff0c;本文针对异步CDMA的MAI主要来自干扰用户的相邻三个比特周期的特…...

哔哩哔哩视频URL解析原理

哔哩哔哩视频URL解析原理 视频网址解析视频的原理通常涉及以下几个步骤&#xff1a; 1、获取视频页面源代码&#xff1a;通过HTTP请求获取视频所在网页的HTML源代码。这一步通常需要处理反爬虫机制&#xff0c;如验证码或用户登录。 2、解析页面源代码&#xff1a;分析HTML源代…...

个人成长的利器:复盘教你如何避免重蹈覆辙

前言 &#x1f4eb; 大家好&#xff0c;我是南木元元&#xff0c;热爱技术和分享&#xff0c;欢迎大家交流&#xff0c;一起学习进步&#xff01; &#x1f345; 个人主页&#xff1a;南木元元 最近忙着学习和工作&#xff0c;更新比较少&#xff0c;期间一直在思考如何才能快速…...

2025秋招NLP算法面试真题(一)-史上最全Transformer面试题

史上最全Transformer面试题 Transformer为何使用多头注意力机制&#xff1f;&#xff08;为什么不使用一个头&#xff09;Transformer为什么Q和K使用不同的权重矩阵生成&#xff0c;为何不能使用同一个值进行自身的点乘&#xff1f; &#xff08;注意和第一个问题的区别&#…...

基于STM32的智能家居安防系统

目录 引言环境准备智能家居安防系统基础代码实现&#xff1a;实现智能家居安防系统 4.1 数据采集模块4.2 数据处理与分析4.3 控制系统实现4.4 用户界面与数据可视化应用场景&#xff1a;智能家居安防管理与优化问题解决方案与优化收尾与总结 1. 引言 智能家居安防系统通过使…...

React+TS前台项目实战(十二)-- 全局常用组件Toast封装,以及rxjs和useReducer的使用

文章目录 前言Toast组件1. 功能分析2. 代码详细注释&#xff08;1&#xff09;建立一个reducer.ts文件&#xff0c;用于管理状态数据&#xff08;2&#xff09;自定义一个清除定时器的hook&#xff08;3&#xff09;使用rxjs封装全局变量管理hook&#xff08;4&#xff09;在to…...

總結光學(完)

參考: 陈曦<<光学讲义>>http://ithatron.phys.tsinghua.edu.cn/downloads/optics.pdf 1 波动光学 最简单的一种波是平面波。........... 一个波的波前是指相位相同的点构成的面。波的传播方向垂直于波面。 我们在此将讨论的光波特指波长远大于原子尺度又远小于…...

线程C++

#include <thread> #include <chrono> #include <cmath> #include <mutex> #include <iostream> using namespace std;mutex mtx; void threadCommunicat() {int ans 0;while (ans<3){mtx.lock();//上锁cout << "ans" <…...

DAMA学习笔记(二)-数据治理

1.引言 数据治理&#xff08;Data Governance&#xff0c;DG&#xff09;的定义是在管理数据资产过程中行使权力和管控&#xff0c;包括计划、监控和实施。在所有组织中&#xff0c;无论是否有正式的数据治理职能&#xff0c;都需要对数据进行决策。建立了正式的数据治理规程及…...

07-appium常用操作

一、press_keycode 1&#xff09;方法说明 press_keycode方法是appium的键盘相关函数&#xff0c;可以实现键盘的相关操作&#xff0c;比如返回、按键、音量调节等等。也可以使用keyevent方法&#xff0c;功能与press_keycode方法类似。 常见按键编码&#xff1a;https://www.…...

使用lua开发apisix自定义插件并发布

接到老大需求&#xff1a;需要对cookie进行操作&#xff0c;遂查询apisix的自带插件&#xff0c;发现有&#xff0c;但不满足&#xff0c;于是自己开发了一个插件并部署&#xff0c;把开发部署流程写在这里打个日志怕以后忘掉。 一、需求 插件很简单&#xff0c;就是在reques…...

43 mysql insert select 的实现

前言 我们这里 来探讨一下 insert into $fields select $fields from $table; 的相关实现, 然后 大致来看一下 为什么 他能这么快 按照 我的思考, 应该里里面有 批量插入才对, 但是 调试结果 发现令我有一些意外 呵呵 果然 只有调试才是唯一的真理 测试数据表如下 CREATE…...

趣味学Python,快速上手神奇的itertools库!

大家好&#xff0c;我是菜哥&#xff01; 在学习Python编程的过程中&#xff0c;我们经常会使用到一些非常有用的标准库&#xff0c;它们不仅可以让我们的代码更加简洁高效&#xff0c;还能帮我们解决很多复杂的问题。Python标准库为我们提供了大量实用的工具和模块&#xff0c…...

富文本编辑器CKEditor

介绍 富文本编辑器不同于文本编辑器,它提供类似于 Microsoft Word 的编辑功能 在Django中,有可以现成的富文本三方模块django-ckeditor,具体安排方式: pip install django-ckeditor==6.5.1官网:Django CKEditor — Django CKEditor 6.7.0 documentation 使用方式 创建项…...

【机器学习】音乐大模型的深入探讨——当机器有了创意,是机遇还是灾难?

&#x1f440;国内外音乐大模型基本情况&#x1f440; ♥概述♥ ✈✈✈如FreeCompose、一术科技等&#xff0c;这些企业专注于开发人工智能驱动的语音、音效和音乐生成工具&#xff0c;致力于利用核心技术驱动文化产业升级。虽然具体公司未明确提及&#xff0c;但可以预见的是…...

机器人学习和研究的物质基础包含哪些内容?

为啥写这个&#xff1f; 在很多博客里面提及物质基础&#xff0c;没想到询问的也非常多&#xff0c;写一篇详细一点的。 之前的故事 不合格且失败机器人讲师个人理解的自身课程成本情况-CSDN博客 迷失自我无缘多彩世界-2024--CSDN博客 物质基础与情绪稳定的关系-CSDN博客 …...

Python中的交互式GUI开发:与MATLAB uicontrol的比较

Python中的交互式GUI开发 Python中的交互式GUI开发&#xff1a;与MATLAB uicontrol的比较**Python GUI开发库****Tkinter****PyQt/PySide** **与MATLAB的比较****总结** Python中的交互式GUI开发&#xff1a;与MATLAB uicontrol的比较 在MATLAB中&#xff0c;uicontrol 是一个…...

js 实现将后端请求来的 Blob 数据保存到用户选择的任意目录

js实现将后端请求来的 Blob 数据保存到用户选择的任意目录 实现方式 实现方式 实现方式是使用 window 的 showSaveFilePicker 方法。Window 接口的 showSaveFilePicker() 方法用于显示一个文件选择器&#xff0c;以允许用户保存一个文件。可以选择一个已有文件覆盖保存&#xf…...

【LLM之RAG】RAT论文阅读笔记

研究背景 近年来&#xff0c;大型语言模型&#xff08;LLMs&#xff09;在各种自然语言推理任务上取得了显著进展&#xff0c;尤其是在结合大规模模型和复杂提示策略&#xff08;如链式思维提示&#xff08;CoT&#xff09;&#xff09;时。然而&#xff0c;LLMs 在推理的事实…...

基于WPF开发桌面AI助手:架构设计与实现详解

1. 项目概述&#xff1a;一个开源的WPF桌面AI助手 最近在GitHub上看到一个挺有意思的项目&#xff0c;叫“MayDay-wpf/AIBotPublic”。光看名字&#xff0c;可能有点摸不着头脑&#xff0c;但点进去研究一下&#xff0c;你会发现这其实是一个用WPF&#xff08;Windows Present…...

Docker化OpenOffice部署:文档自动化转换服务实战指南

1. 项目概述与核心价值最近在折腾一个老项目&#xff0c;需要处理一批.odt格式的文档&#xff0c;这让我想起了那个曾经在开源办公软件领域与微软Office分庭抗礼的“老将”——OpenOffice。虽然现在LibreOffice的风头更盛&#xff0c;但OpenOffice依然有其独特的生态位和用户群…...

阴阳师自动化脚本OAS终极指南:轻松解放双手的完整教程

阴阳师自动化脚本OAS终极指南&#xff1a;轻松解放双手的完整教程 【免费下载链接】OnmyojiAutoScript Onmyoji Auto Script | 阴阳师脚本 项目地址: https://gitcode.com/gh_mirrors/on/OnmyojiAutoScript 阴阳师自动化脚本OAS是一款专门为《阴阳师》游戏设计的智能自动…...

Windows Terminal 预览版:从安装到深度配置,打造现代化命令行工作流

1. 项目概述&#xff1a;为什么我们需要一个现代化的Windows终端&#xff1f;如果你和我一样&#xff0c;在Windows上敲了十几年命令行&#xff0c;从古老的cmd.exe到后来的PowerShell&#xff0c;一个绕不开的痛点就是&#xff1a;这终端工具&#xff0c;用起来总感觉差点意思…...

基于HalloWing的交互式徽章:传感器融合与事件驱动编程实践

1. 项目概述&#xff1a;当硬件开发遇上节日创意如果你和我一样&#xff0c;是个喜欢在万圣节搞点“技术流”小把戏的硬件爱好者&#xff0c;那么手头有一块Adafruit的HalloWing开发板&#xff0c;绝对能让你的节日装备脱颖而出。这不仅仅是一个简单的微控制器项目&#xff0c;…...

PAC技术演进与核心趋势:从多域控制到边缘智能的工业自动化平台

1. 项目概述&#xff1a;为什么今天还要聊PAC&#xff1f;如果你在工业自动化、楼宇控制或者任何涉及逻辑控制的领域工作&#xff0c;那么“PAC”这个词对你来说应该不陌生。但很多时候&#xff0c;它就像一个熟悉的陌生人——大家好像都知道它&#xff0c;但真要细说它现在发展…...

基于RAG与智能体技术构建专业客服AI:从知识注入到流程执行

1. 项目概述&#xff1a;一个面向客服场景的AI智能体指南最近在GitHub上看到一个挺有意思的项目&#xff0c;叫mrqhocungdungai-vn/hermes-cskh-guide。从名字就能猜个大概&#xff0c;这是一个关于“Hermes”的客服&#xff08;CSKH&#xff09;指南&#xff0c;而且看起来是越…...

PowerInfer:基于稀疏激活的LLM推理引擎,消费级GPU运行百亿大模型

1. 项目概述&#xff1a;当大模型推理遇见“热点激活”最近在折腾本地大模型部署的朋友&#xff0c;可能都绕不开一个核心痛点&#xff1a;显存。动辄几十GB的模型&#xff0c;配上动辄几十GB的推理显存需求&#xff0c;让消费级显卡&#xff08;比如我们常见的24GB显存的RTX 4…...

FeFET时间域内存计算宏:突破AI边缘计算能效瓶颈

1. 项目概述&#xff1a;FeFET时间域内存计算宏的创新实现在人工智能和边缘计算蓬勃发展的当下&#xff0c;传统冯诺依曼架构面临着一个根本性挑战&#xff1a;数据在处理器和存储器之间的频繁搬运导致的高能耗和延迟瓶颈。这个问题在需要大量并行乘累加(MAC)运算的神经网络应用…...

ComfyUI-Manager 3步深度优化:构建稳定高效的AI工作流管理平台

ComfyUI-Manager 3步深度优化&#xff1a;构建稳定高效的AI工作流管理平台 【免费下载链接】ComfyUI-Manager ComfyUI-Manager is an extension designed to enhance the usability of ComfyUI. It offers management functions to install, remove, disable, and enable vario…...