【leedcode刷题 1】两数之和

大家好,小生不才,从今天开始将自己刷题的过程记录在博客中,因为能力有限,所以如果有什么错的地方希望大家积极指正,不胜感激。

题目

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

你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。

示例:

给定 nums = [2, 7, 11, 15], target = 9

因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]

方法一(暴力解题法)

两遍循环,把这两个元素找出来。但是该方法简单但是时间复杂度为O(n2),空间复杂度为O(1),运行速度慢且内存空间消耗大。

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

方法二 (哈希表)

在将元素插入到表中的同时,我们还会回过头来检查表中是否已经存在当前元素所对应的目标元素。如果存在,那我们已经找到了对应解,并立即将其返回。

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

【leedcode刷题1】两数之和相关推荐

  1. 学渣的刷题之旅 leetcode刷题 1.两数之和

    给定一个整数数组nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数组中同样的元素 ...

  2. leetcode刷题之 两数之和

    给定一个整数数组和一个目标值,找出数组中和为目标值的两个数. 你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用. 示例:11 给定 nums = [2, 7, 11, 15], targe ...

  3. Leetcode刷题第1题:两数之和(基于Java语言)

    ** Leetcode刷题第1题:两数之和(基于Java语言) ** 题目: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标 ...

  4. leetcode 第1题【两数之和】C语言

    leetcode 第1题[两数之和] 今天开始刷 leetcode 了,坚持每天做 因为不太会编程,只是想记录下来,若有错误,欢迎指正. /*** Note: The returned array m ...

  5. LeetCode/LintCode 题解丨一周爆刷双指针: 两数之和

    描述 给一个整数数组,找到两个数使得他们的和等于一个给定的数 target. 你需要实现的函数twoSum需要返回这两个数的下标, 并且第一个下标小于第二个下标.注意这里下标的范围是 0 到 n-1. ...

  6. 【leetcode】 算法题1 两数之和

    [leetcode] 算法题1 两数之和 问题   给定一个整数数组和一个目标值,找出数组中和为目标值的两个数. 你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用. 示例: 给定 nums ...

  7. 牛客题霸 两数之和C++题解/答案

    牛客题霸 两数之和 C++题解/答案 题目描述 给出一个整数数组,请在数组中找出两个加起来等于目标值的数, 你给出的函数twoSum 需要返回这两个数字的下标(index1,index2),需要满足 ...

  8. LeetCode题 - 1 两数之和

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

  9. 20200720:每日一题之两数之和Ⅱ(leetcode167)

    每日一题之两数之和Ⅱ 题目 思路与算法 代码实现 复杂度分析 题目 思路与算法 今日份笑点如下: 暴力遍历,视为TLE 双指针左右移动,根据大小判断左指针右移还是右指针左移,清晰易懂,为正解. 代码实 ...

  10. 求翻转数循环结构C语言,[LeetCode Easy题快一起刷起来] 1. 两数之和 7. 整数翻转

    毕设答辩顺利通过啦~ 争取每日两道Easy题,快来一起学习吧~ 1. 两数之和 给定一个整数数组 nums 和一个目标值 target,在该数组中找出和为目标值的那两个整数,并返回他们的数组下标. 可 ...

最新文章

  1. 系统故障——管理员口令丢失
  2. 直线矩阵数学之路(2)-四大神器-R(18)
  3. ASP.NET-------字符串和字节数组转换
  4. myabtis 数字+逗号 传参问题 $和#
  5. win2008启动计算机应用配置,[计算机软件及应用]WIN2008_NAP服务器配置详解.doc
  6. 中间件 —— 消息中间件(MOM)
  7. vscode之调试js
  8. 阶段3 3.SpringMVC·_03.SpringMVC常用注解_3 PathVariable注解
  9. 属性值第二个字符是大写引发的血案Warning:(X,X) java: Unmapped target property: “vCpu“.
  10. Memory stream is not expandable
  11. bzoj 4011: [HNOI2015]落忆枫音
  12. html颜色奶白色,象牙白rgb值是多少 和乳白哪个更白
  13. 【prometheus+alertmanager告警管理】
  14. 蓝桥杯C++深度优先搜索(dfs)之组队,迷宫,走方格
  15. 猎企如何制定合理的数据战略?(附数据迁移三大注意点)深度干货
  16. cython安装ubuntu_cython简单使用方法
  17. GIT (分布式版本控制系统)
  18. 如何通过Darkvm注册阿里云国际版?
  19. 2019 南京 网络赛 B (二维偏序,树状数组离线)
  20. 数位DP 学习笔记1(数位DP入门)

热门文章

  1. 使用 PHP-FFMpeg 操作视频/音频文件(转)
  2. jjava企业级开发-01
  3. L1-031 到底是不是太胖了 (10分)
  4. 企业级开发平台的演进
  5. 1. 有1,2,3,4个数字, 能组成多少个互不相同且无重复数字的三位数? 都是多少?
  6. Pygame 教程(2):重要的概念及对象
  7. 如何参与到开源优测-积微速成计划任务
  8. js 事件(绑定、解绑、三个阶段、相关方法)
  9. 推断统计学 假设检验 分布
  10. win10系统打开更新服务器失败怎么回事,如何修复Windows Update组件以解决Win10无法自动更新的问题?...