2021助理高薪-产品经理高薪训练营吾爱分享

162 阅读1分钟

download:2021助理高薪-拉钩产品经理高薪训练营-猿人部落 (97yrbl.com)

思路分析:

两层循环,第一层循环加数,第二层循环被加数,和等于目标值时返回结果。 效率也提高不了多少,最多是内层循环从外层的下标加1开始循环,然后找到下标时不执行完所有循环直接返回结果。

AC 代码:

使用个人喜欢的 go ,感觉代码真的好简洁!

package main

import "fmt"

func twoSum(nums []int, target int) []int {
   var index []int
   var l = len(nums)
   for i := 0; i < l; i++ {
      a := nums[i]
      for j := i + 1; j < l; j++ {
         if a+nums[j] == target {
            index = append(index, i)
            index = append(index, j)
            return index
         }
      }
   }

   return nil
}

func main() {
   nums := []int{2, 7, 11, 15}
   target := 25

   index := twoSum(nums, target)

   if index != nil {
      fmt.Println(index)
   } else {
      fmt.Println("未找到对应下标")
   }
}