From 7bde1523a51ca917268042fb13a2a2bc334420b0 Mon Sep 17 00:00:00 2001 From: Piotr Idzik <65706193+vil02@users.noreply.github.com> Date: Wed, 18 Sep 2024 22:58:49 +0200 Subject: [PATCH] style: use `getOrDefault` in `MajorityElement` (#5454) --- .../hashmap/hashing/MajorityElement.java | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/thealgorithms/datastructures/hashmap/hashing/MajorityElement.java b/src/main/java/com/thealgorithms/datastructures/hashmap/hashing/MajorityElement.java index 56d2b0ef9..0321f23b2 100644 --- a/src/main/java/com/thealgorithms/datastructures/hashmap/hashing/MajorityElement.java +++ b/src/main/java/com/thealgorithms/datastructures/hashmap/hashing/MajorityElement.java @@ -18,17 +18,13 @@ public final class MajorityElement { */ public static List majority(int[] nums) { HashMap numToCount = new HashMap<>(); - int n = nums.length; - for (int i = 0; i < n; i++) { - if (numToCount.containsKey(nums[i])) { - numToCount.put(nums[i], numToCount.get(nums[i]) + 1); - } else { - numToCount.put(nums[i], 1); - } + for (final var num : nums) { + final var curCount = numToCount.getOrDefault(num, 0); + numToCount.put(num, curCount + 1); } List majorityElements = new ArrayList<>(); for (final var entry : numToCount.entrySet()) { - if (entry.getValue() >= n / 2) { + if (entry.getValue() >= nums.length / 2) { majorityElements.add(entry.getKey()); } }