我命由我,不由天!


  • 搜索
prometheus docker golang linux kubernetes

leetcode 两数之和

发表于 2021-04-12 | 0 | 阅读次数 250

image.png
解题:

func twoSum(nums []int, target int) []int {
	resMap := make(map[int]int)
	for i := 0; i<len(nums);i++{
		if _,ok := resMap[target-nums[i]];ok {
			return []int{resMap[target-nums[i]],i}
		}
		resMap[nums[i]] = i
	}
	return []int{0,0}
}

map 数据类型可以一下子找到对应的Key是否存在。本题通过将value存入key中,通过target - value 来获取另个value是否存在map当中。
易错点:

  1. 赋值需要放在判断的后面,可以有效的规避target是本身两倍的情况,当前i循环的过程当中是map中是不存在该key的,只有下一个循环才会出现。
  • 本文作者: Dante
  • 本文链接: https://gaodongfei.com/archives/l-e-e-t-c-o-d-e--liang-shu-zhi-he
  • 版权声明: 本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0 许可协议。转载请注明出处!
scheduler
context
  • 文章目录
  • 站点概览
Dante

Dante

119 日志
5 分类
5 标签
RSS
Creative Commons
0%
© 2023 Dante
由 Halo 强力驱动
|
主题 - NexT.Pisces v5.1.4
沪ICP备2020033702号