LeetCode#2 Add Two Numbers

题目链接

Two Sum - LeetCode

一道经典题目,网上很多资料和最优解

这里给出 golang 版本的最优解,遍历一遍 nums,期间查找和插入 map

1
2
3
4
5
6
7
8
9
10
func twoSum(nums []int, target int) []int {
m := make(map[int] int)
for i,n := range nums {
if j, ok := m[target - n]; ok {
return []int{j, i}
}
m[n] = i
}
return []int{}
}

运行结果

Runtime: 4 ms, faster than 100.00% of Go online submissions for Two Sum.
Memory Usage: 3.7 MB, less than 51.62% of Go online submissions for Two Sum.