Skip to content

Commit a51d6cd

Browse files
solves count number of pairs with absolut difference k
1 parent 19214f8 commit a51d6cd

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -479,7 +479,7 @@
479479
| 1991 | [Find the Middle Index in Array](https://leetcode.com/problems/find-the-middle-index-in-array) | [![Java](assets/java.png)](src/FindTheMiddleIndexInArray.java) | |
480480
| 1995 | [Count Special Quadruplets](https://leetcode.com/problems/count-special-quadruplets) | [![Java](assets/java.png)](src/CountSpecialQuadruplets.java) | |
481481
| 2000 | [Reverse Prefix of Word](https://leetcode.com/problems/reverse-prefix-of-word) | [![Java](assets/java.png)](src/ReversePrefixOfWord.java) | |
482-
| 2006 | [Count Number of Pairs With Absolute Difference K](https://leetcode.com/problems/count-number-of-pairs-with-absolute-difference-k) | | |
482+
| 2006 | [Count Number of Pairs With Absolute Difference K](https://leetcode.com/problems/count-number-of-pairs-with-absolute-difference-k) | [![Java](assets/java.png)](src/CountNumberOfPairsWithAbsoluteDifferenceK.java) | |
483483
| 2011 | [Final Value of Variable After Performing Operations](https://leetcode.com/problems/final-value-of-variable-after-performing-operations) | | |
484484
| 2016 | [Maximum Difference Between Increasing Elements](https://leetcode.com/problems/maximum-difference-between-increasing-elements) | | |
485485
| 2022 | [Convert 1D Array Into 2D Array](https://leetcode.com/problems/convert-1d-array-into-2d-array) | | |
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// https://leetcode.com/problems/count-number-of-pairs-with-absolute-difference-k
2+
// T: O(N)
3+
// S: O(N)
4+
5+
import java.util.HashMap;
6+
import java.util.Map;
7+
8+
public class CountNumberOfPairsWithAbsoluteDifferenceK {
9+
public int countKDifference(int[] nums, int k) {
10+
final Map<Integer, Integer> frequency = new HashMap<>();
11+
int pairs = 0;
12+
for (int element : nums) {
13+
pairs += frequency.getOrDefault(element - k, 0);
14+
pairs += frequency.getOrDefault(element + k, 0);
15+
frequency.put(element, frequency.getOrDefault(element, 0) + 1);
16+
}
17+
return pairs;
18+
}
19+
}

0 commit comments

Comments
 (0)