letcode刷题--two sum

LeetCode刷题标签分类与总结 本文还有配套的精品资源,点击获取 简介:LeetCode是一个帮助程序员提升算法和数据结构技能的编程平台,提供多种类型的编程题目,涵盖Java、Python、C++和JavaScript等语言。题目按标签分类,包括数组、链表、字符串、哈希表、树、回溯和动态规划等类型。本项目是一个开发者为整理自己刷题经验而创建的系统性资源库,旨在帮助学习者通过分类标签针对性地提升技能,并可能... 阅读详情

题目描述:

Given an array of integers, return indices of the two numbers such that they add up to a specific target.

You may assume that each input would have exactly one solution, and you may not use the same element twice.

Example:

Given nums = [2, 7, 11, 15], target = 9,

Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].

first:暴力法:  O(n2)

class Solution {
    public int[] twoSum(int[] nums, int target) {
        int i = 0;
        int j = 0;
        
        for(i=0; i<nums.length; i++){
            for(j=i+1; j<nums.length;j++){
                if((nums[i]+nums[j])==target){
                    if(i!=j){  
                        return new int[] { i, j };
                    }else{
                        ;
                    }
                }
            }
        }
        throw new IllegalArgumentException("No two sum solution");
    }
}

第二种方法:双通哈希表O(n)

在我认为这个算法的时间复杂度依旧为O(n2)

public 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++) {
        int complement = target - nums[i];
        if (map.containsKey(complement) && map.get(complement) != i) {
            return new int[] { i, map.get(complement) };
        }
    }
    throw new IllegalArgumentException("No two sum solution");
}

3:单通哈希表

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);//添加到map中

//相当于(2,1),
//(3,(2,1)),
//(4,(3,2,1),
    }
    throw new IllegalArgumentException("No two sum solution");

 第三种最聪明

 

拆解一个800G光模块:手把手带你认识里面的MT插芯和光纤阵列(FA) 本文详细拆解了800G光模块中的关键组件MT插芯和光纤阵列(FA),揭示了并行光学技术如何实现高速数据传输。通过显微镜下的精密观察,展示了MT插芯的高精度构造和光纤阵列的连接奥秘,同时解析了高精度研磨工艺对光信号传输的重要性。这些微型组件是高速收发模块实现800Gbps带宽的核心技术。 阅读详情

相关推荐

四、嘉立创EDA原理图绘制实战:从零搭建STM32温湿度监测系统

本文详细介绍了使用嘉立创EDA标准版从零开始绘制STM32温湿度监测系统原理图的完整流程。涵盖核心元器件选型、电源电路设计、ADC按键创新应用及模块化布局技巧,帮助电子爱好者快速掌握STM32系统设计,提升嵌入式开发实战能力。

h0i1j2k3l的博客 883

letcood刷题-一次编辑

letcood刷题

wenmin1987的博客 434

Python小白也能玩转迅投QMT量化交易?手把手教你从安装到第一个策略

本文为零基础Python用户提供了上手迅投QMT量化交易平台的完整指南。从Python 3.6环境配置、QMT客户端获取安装,到核心概念讲解,并手把手教你编写并回测一个经典的双均线交易策略,帮助初学者快速迈出量化交易的第一步。

weixin_29103191的博客 763

leetcode刷题知识点总结(刷题必备)

leetcode刷题知识点总结(刷题必备)

ingenuou_的博客 3131

从零开始用STM32驱动RGB屏:配置PCLK、DE同步信号的避坑指南

本文详细介绍了如何使用STM32驱动RGB接口LCD屏幕,重点解析了PCLK配置、同步信号极性和DE使能等关键参数的设置方法。通过实战代码示例和常见问题排查指南,帮助开发者避免常见配置错误,实现稳定的显示效果。特别针对800x480 IPS屏提供了优化建议和调试技巧。

sky77的博客 539

基于MATLAB的数字滤波器之低通滤波器

本文首先介绍了数字低通滤波器的概念和原理,其次论述了低通滤波器的技术指标和设计步骤,最后给出了数字低通滤波器应用于信号去噪的MATLAB代码。

总结论文中的算法并给出论文的复现代码 3万+

告诉你,letcode刷题这样刷

LeetCode算法题有800多道,到底怎么刷呢,这是我看视频教程上给的顺序,按照知识点总结的分组顺序,可以试试哦 第一组: 283 27 26 80 第二组: 75 88 215 第三组: 125 344 11 第四组: 209 3 438 76 第五组 349 350 242 290 205 451 第六组 1 - 15 - 18 - 16 第七组 454- 49 - 447- 1...

smart boy 1703

五.EtherCAT开发之STM32F407ZGt6+ LAN9253 外置EEPROM配置数据含义

EtherCAT从站简称ESC,ESC在上电过程中,会自动加载EEPROM中前7个字(1word = 2 byte)到ESC寄存器。ESC寄存器总是可以被EtherCAT主站通过EtherCAT总线访问,无论PDI接口寄存器配置什么值。EEPROM存储器中的前7个字,将决定ESC的工作模式。

AIoT深度探索者 | 嵌入式系统架构师 深耕物联网(IoT)与人工智能(AI)融合技术,聚焦​​边缘计算、图像开发、低功耗通信协议​​,致力于智能硬件,关注我获取最新技术文章信息与海量资源~ 3467

Letcode刷题心得

每日至少一题,每一题的思考时间不要超过半个小时,解题过程不要超过一个小时,超过了就看答案!Q7 : Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, return -321click to show spoilers.Note: The input is assumed to be

他叫Mr.J 2542

用 ABAP EML 驾驭 RAP 业务对象:从事务缓冲区到落库提交的一条龙实践

摘要:ABAP EML(Entity Manipulation Language)是SAP RAP框架的核心语言能力,为ABAP开发者提供强类型、批处理友好的方式操作RAP业务对象。EML通过事务缓冲区管理数据变更,支持读取(READ ENTITIES)、修改(MODIFY ENTITIES)及事务控制(COMMIT/ROLLBACK ENTITIES)。其特点包括:基于BDEF派生类型确保类型安全,%control和%cid等特殊字段实现精细控制,统一的消息模型便于错误处理。相比传统ABAP数据访问方式,

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 951

uniapp [全端兼容] - 详细实现下拉筛选菜单功能组件,下拉式筛选菜单效果,类似电商美团点击筛选项底部弹出列表点击选择后自动收起(详细示例代码,全端兼容小程序、安卓苹果app、h5网页、nvue

uni-app,vue2,vue3,向下弹出菜单包含筛选功能,日期筛选,下拉框选择器,下拉多条件筛选,下拉式筛选菜单,uniApp如何实现条件下拉筛选,Uniapp官方条件筛选组件,下拉框式条件筛选插件组件,最好用的插件组件,多端兼容,下拉菜单筛选,过滤筛选列表,下拉筛选栏,多列联动的条件筛选,下拉菜单地区和筛选,微信小程序,支付宝小程序,h5网页,移动端网站,安卓app,苹果app,nvue,uniapp所有平台兼容,下拉菜单筛选,下拉式条件筛选,下拉列表,点击排序,级联筛选,uniapp实现下拉筛选

🏆 前端领域优质创作者 1万+

letcode刷题记录

编号147 涉及知识点:链表,快速排序 /** *Definitionforsingly-linkedlist. *publicclassListNode{ *intval; *ListNodenext; *ListNode(){} *ListNode(intval){this.val=val;} *ListNode(intval,ListNodenext){this.val=v...

hdudgxgtx的博客 167

智慧社区:安防系统解决方案

智慧社区:安防系统解决方案

s13166803785的博客 431

letcode two sum

题目如下 Given an array of integers, returnindicesof the two numbers such that they add up to a specific target. You may assume that each input would haveexactlyone solution, and you may not u...

weixin_45201759的博客 61

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Letcode 1.Two Sum

https://leetcode.com/problems/two-sum/ 1. Two Sum Total Accepted: 283732Total Submissions: 1092327Difficulty: Easy Given an array of integers, return indices of the two number

青阳十五的专栏 469

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

letcode刷题--add two numbers

题目描述: You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and ...

letgoDream的博客 216

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

【LetCode算法修炼】Two Sum

题目 Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution. Example: Gi

紫雾凌寒 1767

letcode -- Two Sum 两数之和

题目 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] 解题思路 1、暴...

huangwencai123的博客 285

Letcode python刷题日记 第一天

Letcode python刷题日记 第一天 为了不荒废代码,每天练练 1. Two Sum 难度简单13122收藏分享切换为中文接收动态反馈 Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would have *exactly* one soluti

qq_37631708的博客 576

LeetCode刷题指南

以下是我个人做题过程中的一些体会: 1. LeetCode的题库越来越大,截止到目前,已经有321个问题了。对于大多数人来说,没有时间也没有必要把所有题目都做一遍(时间充裕可以随意)。刷个100题左右应该就差不多了(可以考虑序号为前100多的题目,相对更经典一点)。 2. 从AC率高的开始做,难度从简单->中等,先不要做困难的。 3. 可以按照下文的面试出题频率顺序来做,从频率最高的一批开始。

shiyongraow的博客 442

[Letcode] 1. Two Sum

Given an array of integers, returnindicesof the two numbers such that they add up to a specific target. 给定一个integer类型的数组,让你返回数组中两个元素相加起来等于给定的值得元素的索引数组 You may assume that each input would haveexa...

weixin_30278237的博客 57

LeetCode刷题是提升算法思维、编程能力和面试竞争力的有效途径

▸ 自测方式:对同一模板(如岛屿数量DFS),限时20分钟完成:  ① 基础版(200. 岛屿数量)→ 正确AC  ② 变形1:带状态返回(130. 被围绕的区域)→ 标记边界连通O  ③ 变形2:路径约束(1319. 连通网络的操作次数)→ 结合并查集思考是否仍适用DFS ▸ 量化达标线:3题均在20分钟内逻辑清晰实现,无调试超10分钟

[Blog][Domain] programb.blog.youkuaiyun.com 448

letcode算法,ChatGPT来救场(每日一学)

众所周知ChatGPT是一种大型语言模型,使用深度学习技术学习大量的语料库,从而模仿人类语言和思维方式,回答用户的问题我们那他来辅助letcode刷题,有答疑还有详细的解释,岂不美哉。

jiaojiaojiaoyaa的博客 278

Leetcode上已AC的一百多道题

# Title Solution Acceptance Difficulty Paid-Only 0001 Two Sum Java 42.47% Easy 0002 Add Two Numbers Java 30.72% Medium 0003 Longest Substring Without Repeating Characters Java 28.06% M...

Rikin2016的博客 900

[Leetcode.python] 001. Two Sum

在学习新语言Python, 决定使用Python刷刷Leetcode. 题目001:Two Sum (https://leetcode.com/problems/two-sum/) 大意,给定一个数组nums和一个数target,确定有且只有一对坐标index1, index2, 使得nums[index1] + nums[index2] == target 解答

Three Body 的专栏 869

Leetcode two-sum

题目描述 给出一个整数数组,请在数组中找出两个加起来等于目标值的数, 你给出的函数twoSum 需要返回这两个数字的下标(index1,index2),需要满足index1 小于index2.。注意:下标是从1开始的 假设给出的数组中只存在唯一解 例如: 给出的数组为 {2, 7, 11, 15},目标值为9 输出 ndex1=1, index2=2 示例1 输入 复制 [3,2,4],6 输出 复制 [2,3] 思路:先原先数组排序,二分形式查找到那两个值 然后 到..

一只老风铃 371
上一篇: HTML基础总结(二):链接
下一篇: letcode刷题--add two numbers
iamlinuxasd
博客等级 码龄10年 4粉丝 35原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值