【哈希表】LeetCode 1. 两数之和

题目链接

1. 两数之和

思路

使用 HashMap 来存储每个元素的下标及其所需要加和的数,遍历数组,检查每个数是否在 HashMap 中有对应的加和数,如果没有则把该数也加入 HashMap 中。

代码

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

        HashMap<Integer, Integer> map = new HashMap<>();
        int[] res = new int[2];

        for(int i = 0; i < nums.length; i++){
            int num = nums[i];

            if(map.containsKey(num)){

                res[0] = map.get(num);
                res[1] = i;
                break;
            }else{
                map.put(target - num, i);
                System.out.println(map.get(target - num));
            }
        }

        return res;
    }
}
posted @ 2023-01-06 09:09  Frodo1124  阅读(49)  评论(0编辑  收藏  举报