1.两数之和《Leetcode 算法题》

74 阅读1分钟

image.png

初始化代码

class Solution {
    public int[] twoSum(int[] nums, int target) {

    }
}

最终代码

package com.sugon.cloud.utils;

import java.util.HashMap;
import java.util.Map;

/**
 * @Auther: liuysh
 * @Date: 2021/9/29 22:06
 * @Description: 两数之和
 */
public class Solution1 {
    public int[] twoSum(int[] nums, int target) {

        Map<Integer,Integer> map =new HashMap<>();
        int n=nums.length;
        for (int i = 0; i <n ; i++) {
            if(map.containsKey(target-nums[i])){
                int[] result={map.get(target-nums[i]),nums[i]};
                return result;
            }
            map.put(nums[i],nums[i]);
        }

        return new int[0];
    }

    public static void main(String[] args) {
        Solution1 s=new Solution1();
        int[] nums={1,2,3,4,5};
        int target=6;
        int[] ints=s.twoSum(nums,target);
        for (int i:ints
             ) {
            System.out.println(i);
        }

    }
}