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

问题背景

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

如果一组数字 ( i , j ) (i,j) (i,j) 满足 n u m s [ i ] = n u m s [ j ] nums[i] = nums[j] nums[i]=nums[j] 且 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 nums[i] \le 100 1≤nums[i]≤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;
    }
}
相关推荐
地平线开发者2 小时前
ReID/OSNet 算法模型量化转换实践
算法·自动驾驶
地平线开发者2 小时前
开发者说|EmbodiedGen:为具身智能打造可交互3D世界生成引擎
算法·自动驾驶
星星火柴9363 小时前
关于“双指针法“的总结
数据结构·c++·笔记·学习·算法
艾莉丝努力练剑4 小时前
【洛谷刷题】用C语言和C++做一些入门题,练习洛谷IDE模式:分支机构(一)
c语言·开发语言·数据结构·c++·学习·算法
闪电麦坤955 小时前
数据结构:迭代方法(Iteration)实现树的遍历
数据结构·二叉树·
C++、Java和Python的菜鸟6 小时前
第六章 统计初步
算法·机器学习·概率论
Cx330❀6 小时前
【数据结构初阶】--排序(五):计数排序,排序算法复杂度对比和稳定性分析
c语言·数据结构·经验分享·笔记·算法·排序算法
散1126 小时前
01数据结构-Prim算法
数据结构·算法·图论
起个昵称吧6 小时前
线程相关编程、线程间通信、互斥锁
linux·算法
..过云雨7 小时前
01.【数据结构-C语言】数据结构概念&算法效率(时间复杂度和空间复杂度)
c语言·数据结构·笔记·学习