【每日一题Day205】LC2441与对应负数同时存在的最大正整数 | 哈希表

简介: 【每日一题Day205】LC2441与对应负数同时存在的最大正整数 | 哈希表

与对应负数同时存在的最大正整数【LC2441】

给你一个 不包含 任何零的整数数组 nums ,找出自身与对应的负数都在数组中存在的最大正整数 k

返回正整数 k ,如果不存在这样的整数,返回 -1

今天状态还可以 37.8

  • 思路
    使用哈希表记录每个数的出现状态,如果某个数的相反数已经出现过,那么该数的绝对值符合题意,取最大值返回即可
  • 实现
class Solution {
    public int findMaxK(int[] nums) {
        int res = -1;
        Set<Integer> seen = new HashSet<>();
        for (int num : nums){
            if (seen.contains(-1 * num)){
                res = Math.max(res,Math.abs(num));
            }
            seen.add(num);
        }
        return res;
    }
}

复杂度

  • 时间复杂度:O(n)
  • 空间复杂度:O(n)
目录
相关文章
|
6月前
【每日一题Day370】LC318最大单词长度乘积 | 哈希表 位运算
【每日一题Day370】LC318最大单词长度乘积 | 哈希表 位运算
53 1
|
6月前
【每日一题Day202】LC1015可被 K 整除的最小整数 | 模运算
【每日一题Day202】LC1015可被 K 整除的最小整数 | 模运算
66 2
|
6月前
【每日一题Day136】LC982按位与为零的三元组 | 哈希表
【每日一题Day136】LC982按位与为零的三元组 | 哈希表
62 0
|
6月前
【每日一题Day163】LC2367算术三元组的数目 | 二分查找 哈希表
【每日一题Day163】LC2367算术三元组的数目 | 二分查找 哈希表
30 0
|
6月前
|
存储
【每日一题Day158】LC2395和相等的子数组 | 哈希表
【每日一题Day158】LC2395和相等的子数组 | 哈希表
31 0
|
6月前
【每日一题Day142】LC1590使数组和能被 P 整除 | 前缀和+哈希表
【每日一题Day142】LC1590使数组和能被 P 整除 | 前缀和+哈希表
41 0
|
6月前
【每日一题Day317】LC2605从两个数字数组里生成最小数字 | 哈希表
【每日一题Day317】LC2605从两个数字数组里生成最小数字 | 哈希表
41 0
|
6月前
【每日一题Day368】LC421数组中两个数的最大异或值 | 字典树
【每日一题Day368】LC421数组中两个数的最大异或值 | 字典树
30 0
|
6月前
【每日一题Day252】LC1两数之和 | 哈希表
【每日一题Day252】LC1两数之和 | 哈希表
37 0
|
6月前
【每日一题Day299】LC2235两整数相加
【每日一题Day299】LC2235两整数相加
31 0