eolas/neuron/8a3d2c22-db18-478e-8e4c-1e11b6fe5320/Frequency_counters.md
2024-12-01 19:37:47 +00:00

771 B

tags
data-structures

Frequency counters

Here is a concise method for counting the number instances of each type of array element.

function frequencyCounter(...inputArr) {
  let counter = {};
  inputArr.forEach((item) => {
    // If item doesn't exist as a key in the counter, make 0 the val and add one
    // If item already exists as key in the counter, increment it by one
    counter[item] = (counter[item] || 0) + 1;
  });
  return counter;
}

An application of this would be checking for duplicates in an array:

const testArr = [1, 4, 3, 3];
const arrayFreq = frequencyCounter(testArr);
let count = Object.values(arrayFreq);

if (count.some((ele) => ele > 1)) {
  return "There are duplicates";
} else return "No duplicates";