题目描述

给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。
你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。
样例

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

想法一: 两重循环,但是时间复杂度高
想法二: 遍历nums,得到每个target-nums[i],然后在nums中找是否存在这个值,时间复杂度当然比一好,但不是最好

class Solution:def twoSum(self, nums, target):""":type nums: List[int]:type target: int:rtype: List[int]"""one=0success=Falsefor i in nums:tag = target-iif tag in nums:two = nums.index(tag)if two!=one:success = Truebreakone += 1if success is True:return one, two

想法三: 在查询资料后,得到了这种思想,遍历的时候,把该数的另一半放入字典,然后每次遍历的时候判断该数是否在字典中,即可完成该题

class Solution:def twoSum(self, nums, target):""":type nums: List[int]:type target: int:rtype: List[int]"""# 获取nums长度n = len(nums)# 创建索引字典d = {}# 遍历nums,每一次将与遍历数符合的数存入字典for i in range(n):# 得到符合的数sb = target - nums[i]if nums[i] in d.keys():# 如果存在,说明可以组成组合return d[nums[i]], ielse:# 不存在,加入d[sb] = i

最后

刷过的LeetCode源码放在Github上了,希望喜欢或者觉得有用的朋友点个star或者follow。
有任何问题可以在下面评论或者通过私信或联系方式找我。
联系方式
QQ:791034063
Wechat:liuyuhang791034063
CSDN:https://blog.csdn.net/Sun_White_Boy
Github:https://github.com/liuyuhang791034063

转载于:https://www.cnblogs.com/GF66/p/9785473.html

LeetCode 1 两数之和 python相关推荐

  1. [leetcode]1.两数之和

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

  2. [hashmap|空间换时间] leetcode 1 两数之和

    [hashmap|空间换时间] leetcode 1 两数之和 1.题目 题目链接 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下 ...

  3. C/C++描述 LeetCode 167. 两数之和 II - 输入有序数组

    C/C++描述 LeetCode 167. 两数之和 II - 输入有序数组   大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在 ...

  4. LeetCode 1. 两数之和

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

  5. Leetcode 1. 两数之和 (Python版)

    有粉丝说我一个学算法的不去做Leetcode是不是浪费,于是今天闲来没事想尝试一下Leetcode,结果果断翻车,第一题没看懂,一直当我看到所有答案的开头都一样的时候,我意识到了我是个铁憨憨,人家是让 ...

  6. 【前端来刷LeetCode】两数之和与两数相加

    大部分玩前端的小伙伴,在算法上都相对要薄弱些,毕竟调样式.调兼容就够掉头发的了,哪还有多余的头发再去折腾. 确实在前端中需要使用到算法的地方是比较少,但若要往高级方向发展,算法的基本功就非常重要啦.对 ...

  7. leetCode:twoSum 两数之和 【JAVA实现】

    LeetCode 两数之和 给定一个整数数组,返回两个数字的索引,使它们相加到特定目标. 您可以假设每个输入只有一个解决方案,并且您可能不会两次使用相同的元素. 更多文章查看个人博客 个人博客地址:t ...

  8. 力扣(leetcode)-1. 两数之和

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

  9. LeetCode 01两数之和02两数相加

    力扣 LeetCode01两数之和 LeetCode02两数之加 前言:第一次LeetCode打卡题解,前面组织的打卡活动从今天开始正式开始了,很多csdn和公众号小伙伴以及加入了,欢迎加入!详细看力 ...

  10. 【LeetCode】两数之和

    package leetcode.editor.cn;//给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. // // 你可 ...

最新文章

  1. Fuel4d 2.3 公布
  2. Fedora install chrome
  3. 8-7复习 stl常用算法
  4. WebRTC 音视频开发之路
  5. 使用 Angular Transfer State 的一个具体例子
  6. 计算机二级证书在学校哪里领取,计算机二级证书去哪里领取
  7. form表单,submit,ajax提交
  8. Redis数据类型--散列类型
  9. .net 5 正式版_ASP.NET Core 3时代全新开启,DevExpress ASP.NET增强Data Grid
  10. 无人车飞速狂飙,黑科技如何为其加油打气?
  11. clipboard.js使用方法
  12. vs2005无法附加进程
  13. excel自动调整列宽_Knime数据分析入门- 06 自动调整Excel中列序
  14. 我从写技术博客中收获到了什么?- J_Knight_
  15. Foxmail,mac邮箱app
  16. grafana对接zabbix
  17. Unix时间戳 怎么计算
  18. Homekit智能灯泡
  19. 北京地铁线路图(最新-非常实用)
  20. C语言练习-day29

热门文章

  1. 相机模型与标定(六)--单应性求解
  2. 如何对第一个值相同的列表中的元组求和
  3. yarn 内存与CPU参数设置
  4. flume hdfs sink 文件滚动策略
  5. 告诉刚入行的兄弟们,钱是这么赚的!
  6. Linux_开机自动挂载磁盘
  7. 约瑟夫环问题:猴子选大王
  8. Centos7 / RHEL 7 双网卡绑定
  9. 揭秘全球最大网站 Facebook 背后应用软件
  10. React+Redux系列教程