石家庄网站小程序,网站四网合一,学编程的基础要具备什么,寻找常州微信网站建设思路#xff1a;
用 hashMap 存储遍历过的元素和对应的索引。 每遍历一个元素#xff0c;看看 hashMap 中是否存在满足要求的目标数字。 所有事情在一次遍历中完成#xff08;用了空间换取时间#xff09;。
// twoSum 函数接受一个整数数组 nums 和一个目标值 target
用 hashMap 存储遍历过的元素和对应的索引。 每遍历一个元素看看 hashMap 中是否存在满足要求的目标数字。 所有事情在一次遍历中完成用了空间换取时间。
// twoSum 函数接受一个整数数组 nums 和一个目标值 target返回数组中两个数字的索引使它们的和等于目标值。
// 如果有多个解决方案只需返回任意一个即可。
func twoSum(nums []int, target int) []int {// 使用哈希表存储数组元素及其索引preNums : map[int]int{}// 遍历数组for i, num : range nums {// 计算当前数字对应的目标值targetNum : target - num// 检查目标值是否在哈希表中targetNumIndex, ok : preNums[targetNum]if ok {// 如果目标值存在返回目标值的索引和当前索引return []int{targetNumIndex, i}} else {// 如果目标值不存在则将当前数字及其索引存入哈希表preNums[num] i}}// 如果没有找到满足条件的索引返回空数组return []int{}
}