1. 两数之和

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。

leetcode
你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。

你可以按任意顺序返回答案。

示例 1:

输入:nums = [2,7,11,15], target = 9
输出:[0,1]
解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。

示例 2:

输入:nums = [3,2,4], target = 6
输出:[1,2]

示例 3:

输入:nums = [3,3], target = 6
输出:[0,1]

提示:

  • 2 <= nums.length <= 103
  • -109 <= nums[i] <= 109
  • -109 <= target <= 109 只会存在一个有效答案

C++:

暴力美学 O(n^2)

class Solution {public:vector<int> twoSum(vector<int>& nums, int target) {for(int i = 0; i < nums.size()-1; i++){for(int j = i+1; j < nums.size(); j++){if(target == nums[i] + nums[j])return {i,j};}}return {};}
};

哈希思想 O(n)

解题思路
用哈希表来 存储 temp = target - nums[i],通过查找一个合适的temp来使 + 当前的值 等于 target。
时间复杂度O(n)。

class Solution {public:vector<int> twoSum(vector<int>& nums, int target) {unordered_map<int,int> heap; //底层哈希表 O(1)for(int i = 0; i < nums.size(); i++){int temp = target - nums[i];if(heap.count(temp)) return {heap[temp], i};heap[nums[i]] = i;}return {};}
};

猜猜哪个是暴力美学???

两数之和 暴力美学 哈希表相关推荐

  1. Two Sum (两数之和) - Hash Table (哈希表)

    Two Sum (两数之和) - Hash Table (哈希表) https://leetcode-cn.com/problems/two-sum/ Given an array of intege ...

  2. ❤️导图整理数组4: 三数之和 相比于 两数之和 的难点, 力扣15❤️

    此专栏文章是对力扣上算法题目各种方法的总结和归纳, 整理出最重要的思路和知识重点并以思维导图形式呈现, 当然也会加上我对导图的详解. 目的是为了更方便快捷的记忆和回忆算法重点(不用每次都重复看题解), ...

  3. 【LeetCode1】两数之和_哈希表

    一.题目 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标. 你可以假设每种输入只会对应一个答案.但是 ...

  4. LeetCode 1. 两数之和【哈希表】

    1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标. 你可以假设每种输入只会对应一个答案 ...

  5. 算法训练Day6 | LeetCode:242. 有效的字母异位词(数组作哈希表);349. 两个数组的交集(Set作哈希表);202.快乐数 (Set作哈希表);1. 两数之和(Map作哈希表)

    目录 LeetCode242. 有效的字母异位词 方法:数组作哈希表 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考 Leetcode349. 两个数组的交集 方法一:用Set作HashMa ...

  6. 【算法】哈希表 ( 两数之和 )

    算法 系列博客 [算法]刷题范围建议 和 代码规范 [算法]复杂度理论 ( 时间复杂度 ) [字符串]最长回文子串 ( 蛮力算法 ) [字符串]最长回文子串 ( 中心线枚举算法 ) [字符串]最长回文 ...

  7. 从leetcode1. 两数之和循序渐进(双指针,BST,哈希表)

    leetcode1. 两数之和 1.之前只知道桶排序那种标志数组,所以看到第一眼就想到那个方面去了.但在本题数组里面存储某个数出现的次数对该题是没有意义的,应该存储某个数出现的位置. 2.哈希表是优化 ...

  8. 算法动画图解:两数之和(哈希表)

    更多算法动画图解,长按此链接跳转AppStore 动画 算法动画图解:两数之和(哈希表) 思路 哈希表map用来保存一个数,另一个数在遍历nums的时候和map中的数尝试求和是否为target,如果求 ...

  9. python两数之和(hash 表)

    两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标.你可以假设每种输入只会对应一个答案.但是,数 ...

最新文章

  1. 图片1---前馈神经网络+反向传播神经网络
  2. How to create DBFS file system
  3. python教程:深拷贝与浅拷贝的具体区别在哪里
  4. 从MVC到云原生:CBU研发体系演进之路
  5. POJ 1723 Soldiers (中位数)
  6. hdu 4293 Groups DP
  7. pytorch之embedding
  8. ActiveMQ此例简单介绍基于docker的activemq安装与集群搭建
  9. 数值分析方阵的QR分解
  10. linux ldd命令详解
  11. python 读grid 数据_如何将TextGrid文件的变量读入Python?
  12. Yacc 与 Lex
  13. Java调用Python程序方法总结(最全最详细)
  14. 黑马程序员html基本笔记
  15. DSP入门:GPIO
  16. 雅虎邮箱(yahoo):应用程序专用密码登录
  17. Google Play 开发者账户被封
  18. CF755F PolandBalls and Gifts
  19. Unity3d 在 twitter 转载(周报) UniteLA大会 和 Unity2019版本的Roadmap路线图
  20. Java开发买低压本还是标压本_别看游戏本不用低压CPU,其实低压CPU成本比标压CPU更高!...

热门文章

  1. 前后端分离之Vue(二)前后端结合
  2. 在selenium中使用tor浏览器驱动
  3. Echarts 改变地图文字颜色大小,以及鼠标经过颜色
  4. IC验证中的force/release 学习整理(1)初见朋友
  5. 每日一题——L1-069 胎压监测(15)
  6. android lrucache清空,Android LruCache 的 Bug
  7. 【JZOJ 省选模拟】鱼池逃脱Cow at Large
  8. Table中行点击事件和复制事件冲突问题
  9. C++手写均值滤波算法
  10. 【大坑特坑】第六届华为“创新杯”编程大赛初赛题目(第五场)