1. 两数之和

    科技2022-07-10  133

    LeetCode: 1. 两数之和

    典型哈希表题

    此次每日抑题 >> 回到最初的起点

    想着给 9 个月前的自己展示一下进步 却又被打击一遍

    第一想法,想到类似背包问题 >> 万能递归解决 递归 超时 …

    使用 哈希表 >> 时间复杂度 O(N)

    哈希表代码

    public int[] twoSum(int[] nums, int target) { if(nums == null || nums.length == 0) return new int[0]; int[] ans = new int[2]; Map<Integer, Integer> map = new HashMap<>(); // 初始化 map for (int i = 0; i < nums.length; i++) { map.put(nums[i], i); } for (int i = 0; i < map.size(); i++) { int index = 0; ans[index++] = i; int temp = target - nums[i]; // 数组中同一个元素不能使用两遍 if(map.get(temp) != null && map.get(temp) != i) { ans[index++] = map.get(temp); return ans; } } return ans; }
    Processed: 0.013, SQL: 8