当前位置:   article > 正文

LeetCode热题HOT100(两数之和Java实现)_hot100 java

hot100 java

第一题:两数之和
详细链接:具体地址(题目描述和刷题平台)
代码实现

    public int[] twoSum(int[] nums, int target) {
        Map<Integer, Integer> map = new HashMap<>();
        int ans[] = new int[2];
        for (int i = 0; i < nums.length; i++) {
            if (map.containsKey(target - nums[i])) {
                ans[0] = map.get(target - nums[i]);
                ans[1] = i;
                break;
            }
            map.put(nums[i], i);
        }
        return ans;
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

代码说明:用HashMap存储数组中数据的值和具体的位置,每次判断在当前位置的前面是否含有和等于目标值的元素,如果有就直接跳出循环,没有则继续往下判断。
代码分析:时间复杂度和空间复杂度为O(n)
GitHub链接地址:github有这个系列的所有Java代码实现

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/390426
推荐阅读
相关标签
  

闽ICP备14008679号