golang给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那两个整数,并返回它们的数组下标
时间: 2024-06-16 18:06:30 浏览: 178
在Go语言中,可以使用两数之和的方法来找出一个整数数组中和为目标值的两个整数,并返回它们的数组下标。以下是一种实现方式:
```go
func twoSum(nums []int, target int) []int {
// 创建一个map,用于存储数组元素和对应的索引
numMap := make(map[int]int)
// 遍历数组
for i, num := range nums {
// 计算目标值与当前元素的差值
complement := target - num
// 在map中查找差值是否存在
if index, ok := numMap[complement]; ok {
// 如果存在,则返回两个元素的索引
return []int{index, i}
}
// 将当前元素及其索引存入map中
numMap[num] = i
}
// 如果没有找到符合条件的两个元素,则返回空数组
return []int{}
}
```
使用该函数可以找到和为目标值的两个整数的数组下标。例如:
```go
nums := []int{2, 7, 11, 15}
target := 9
result := twoSum(nums, target)
fmt.Println(result) // 输出 [0, 1]
```
阅读全文