【Leetcode 每日一题 - 扩展】1512. 好数对的数目

问题背景

给你一个整数数组 n u m s nums nums。

如果一组数字 ( i , j ) (i,j) (i,j) 满足 n u m s i = n u m s j numsi = numsj numsi=numsj 且 i < j i < j i<j,就可以认为这是一组 好数对 。

返回好数对的数目。

数据约束

  • 1 ≤ n u m s . l e n g t h ≤ 100 1 \le nums.length \le 100 1≤nums.length≤100
  • 1 ≤ n u m s i ≤ 100 1 \le numsi \le 100 1≤numsi≤100

解题过程

用哈希表维护每个数字出现的次数,每次遇到一个元素的时候,累计它出现过的次数就可以了。

具体实现

java 复制代码
class Solution {
    public int numIdenticalPairs(int[] nums) {
        int res = 0;
        Map<Integer, Integer> count = new HashMap<>();
        for (int num : nums) {
            int cur = count.getOrDefault(num, 0);
            res += cur;
            count.put(num, cur + 1);
        }
        return res;
    }
}
相关推荐
XMXFS1 分钟前
小红书推荐算法底层逻辑解析:用数据思维做内容优化
python·算法·新媒体运营·推荐算法
0+1118 分钟前
算法 --栈
算法·leetcode
鶴哥只手遮天11 分钟前
Gmsh 源码深度解析-第 2 章 几何内核
算法·开源
鶴哥只手遮天17 分钟前
Gmsh 源码深度解析-第 9 章 后处理与插件体系
算法·开源
圣保罗的大教堂19 分钟前
leetcode 3723. 数位平方和的最大值 中等
leetcode
鶴哥只手遮天20 分钟前
Gmsh 源码深度解析-第 7 章 网格质量、优化与高级技术
算法·开源
鶴哥只手遮天25 分钟前
OpenFOAM 源码深度剖析 · 第二季-15 实战:手写一个求解器、库与边界条件
算法·开源
鶴哥只手遮天27 分钟前
Gmsh 源码深度解析-第 8 章 数值内核与高阶有限元
算法·开源
鶴哥只手遮天29 分钟前
Gmsh 源码深度解析-第 4 章 网格生成总控与尺寸场
算法·开源
鶴哥只手遮天30 分钟前
Gmsh 源码深度解析-第 10 章 求解器框架、API 与语言绑定
算法·开源