Friday, October 17, 2025
HomeLanguagesJavascriptJavaScript Program to Print All Duplicate Characters in a String

JavaScript Program to Print All Duplicate Characters in a String

In this article, we will learn how to print all duplicate characters in a string in JavaScript. Given a string S, the task is to print all the duplicate characters with their occurrences in the given string.

Example:

Input: S = “neveropen”
Output:
e, count = 4
g, count = 2
k, count = 2
s, count = 2

Below are the following approaches through which we print all duplicate characters in a string in JavaScript:

  • Using For Loop
  • Using Sorting
  • Using Hashing

Approach 1: Using For Loop in JavaScript

In this approach, an object named charCount to effectively maintain the frequency of characters in the string. It sequentially processes each character in the input string, increasing its count in the charCount object. Once the character frequencies are established, the code then traverses through the charCount object. It selectively prints characters that have occurrences greater than one, thereby accurately showcasing the duplicate characters along with the corresponding count of duplications.

Example:

Javascript




function printDups(str) {
    let charCount = {};
  
    for (let i = 0; i < str.length; i++) {
        let character = str[i];
        charCount[character] = (charCount[character] || 0) + 1;
    }
  
    for (let char in charCount) {
        if (charCount[char] > 1) {
            console.log(char + ", count = " + charCount[char]);
        }
    }
}
  
let str = "neveropen";
printDups(str);


Output

g, count = 2
e, count = 4
k, count = 2
s, count = 2
  • Time Complexity: O(n)
  • Space Complexity: O(n)

Approach 2: Using Sorting in JavaScript

  • Sort the given string.
  • Loop through the sorted string to find the duplicates.
  • If the next character is the same as the current character then we keep on counting the occurrence of that char.
  • If the count is greater than one then we print the character and its count.

Example:

Javascript




function printDuplicates(str) {
    let len = str.length;
  
    // Sorting the string
    str = str.split('').sort().join('');
  
    // Loop through the sorted string to find duplicates
    for (let i = 0; i < len; i++) {
        let count = 1;
  
        // Counting the occurrences of each character
        while (i < len - 1 && str[i] == str[i + 1]) {
            count++;
            i++;
        }
  
        // Printing the duplicate character and its count
        if (count > 1) {
            console.log(str[i] + ", count = " + count);
        }
    }
}
  
let str = "neveropen";
printDuplicates(str);


Output

e, count = 4
g, count = 2
k, count = 2
s, count = 2

Time Complexity: O(N*logN), where N = length of the string passed and it takes O(1) time to insert and access any element in an unordered map
Auxiliary Space: O(1).

Approach 3: Using Hashing in JavaScript

  • Declare a unordered map of the char-int pair.
  • Traverse the string using a loop and increase the count of the present char in the map.
  • Iterate through the map and print a character that has a value greater than one in map.

Javascript




// JavaScript program to count all duplicates
// from string using maps
function printDups(str) {
    let count = new Map();
    for (let i = 0; i < str.length; i++) {
        if (count.has(str[i])) {
            count.set(str[i], count.get(str[i]) + 1);
        }
        else {
            count.set(str[i], 1);
        }
        //increase the count of characters by 1
    }
    //iterating through the unordered map
    for (let [it, it2] of count) {
        if (it2 > 1)
            //if the count of characters is 
            //greater than 1 then duplicate found
            console.log(it, ", count = ", it2);
    }
}
/* Driver code*/
  
let str = "neveropen";
printDups(str);


Output

g , count =  2
e , count =  4
k , count =  2
s , count =  2

Time Complexity: O(N), where N = length of the string passed and it takes O(1) time to insert and access any element in an unordered map
Auxiliary Space: O(K), where K = size of the map (0<=K<=input_string_length), in worst case space will be O(N).

RELATED ARTICLES

Most Popular

Dominic
32361 POSTS0 COMMENTS
Milvus
88 POSTS0 COMMENTS
Nango Kala
6728 POSTS0 COMMENTS
Nicole Veronica
11892 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11954 POSTS0 COMMENTS
Shaida Kate Naidoo
6852 POSTS0 COMMENTS
Ted Musemwa
7113 POSTS0 COMMENTS
Thapelo Manthata
6805 POSTS0 COMMENTS
Umr Jansen
6801 POSTS0 COMMENTS