728x90
반응형
✨ 문제
Shuffle the Array
Given an array of integers nums, return the number of good pairs.
A pair (i, j) is called good if nums[i] == nums[j] and i < j.
https://leetcode.com/problems/number-of-good-pairs/description/
✨ 개념
해시 테이블 Hash Table
- 매우 효율적인 데이터 구조로, 키(Key)-값(Value) 쌍을 저장하고 검색하는데 사용됨.
- 평균적으로 O(1)의 시간 복잡도로 데이터를 삽입, 삭제 및 검색할 수 있음.
✨ 최종코드
class Solution {
public int numIdenticalPairs(int[] nums) {
HashMap<Integer, Integer> countMap = new HashMap<>();
int goodPairs = 0;
for (int num : nums) {
if (countMap.containsKey(num)) {
goodPairs += countMap.get(num);
countMap.put(num, countMap.get(num) + 1);
} else {
countMap.put(num, 1);
}
}
return goodPairs;
}
}
728x90
반응형