测试

发布于:2019-07-15 13:10:11

题目

思路

  1. func twoSum(nums []int, target int) []int {
  2. // 声明并初始话一个空的[]int
  3. var res = []int{}
  4. // 动态分配一个map
  5. value_index := make(map[int]int)
  6. for i := 0; i < len(nums); i++ {
  7. // 使用返回值ok判断mao中的键是否存在
  8. _, ok := value_index[nums[i]]
  9. // 如果map键中存在当前索引对应的值,则添加两个值的索引到res中
  10. if ok {
  11. // 切片的添加元素函数append函数调用后的返回结果一定要赋值,否则报错evaluated but not used
  12. res = append(res, value_index[nums[i]])
  13. res = append(res, i)
  14. }
  15. // 不存在,则 将目标之减去当前索引对应的值target-nums[i]作为键,当前索引作为值,加入到map中
  16. value_index[target-nums[i]] = i
  17. }
  18. return res
  19. }

结果

阅读 312

jicg

aaaa