力扣笔记-1、两数之和

题目:

给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。

你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/two-sum
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

分析:

在数组内找到两个值,使这两值之和为目标值,并将这两个值的下标返回。

  1. 返回的是值的下标
  2. 必然涉及到数组的遍历
  3. 这两个值不能为同一个

使用HashMap来解决:即 键值 = 数组的值   值 = 数组值的下标

target - nums[ i ] 的值在HashMap中存在该键,则说明找到满足的这两个值,下标则为该键对应的值 i

代码:

 public int[] twoSum(int[] nums, int target) {
        Map map = new HashMap<>();
        for(int i=0;i

在这里要感谢bilibili的UP主:程序员刀刀 是他的视频给了我灵感。

你可能感兴趣的:(力扣笔记)