Java Concept Of The Day

Given a string, your code must find out the first repeated as well as non-repeated character in that string. For example, if “JavaConceptOfTheDay” is the given string, then ‘J’ is a first non-repeated character and ‘a’ is a first repeated character.  Have a look at the below image.
repeated and non-repeated character

How To Find First Repeated And Non-Repeated Character In A String?

Step 1 : Define one HashMap called charCountMap with Character as key and Integer as value. This map will hold the characters and their count in the given string.
Step 2 : Convert inputString to char array called strArray.
Step 3 : Iterate through all chars of strArray and update their occurrences in charCountMap.
Step 4 : Iterate through all chars of strArray and check their count in charCountMap. Any first occurring character with 1 as it’s count will be the first non-repeated character in inputString.
Step 5 : Iterate through all chars of strArray and check their count in charCountMap. Any first occurring character with >1 as it’s count will be the first repeated character in inputString.
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
import java.util.HashMap;
import java.util.Scanner;
  
public class MainClass
{   
    static void firstRepeatedNonRepeatedChar(String inputString)
    {
       
         
        HashMap<Character, Integer> charCountMap = new HashMap<Character, Integer>();
         
      
         
        char[] strArray = inputString.toCharArray();
         
        
         
        for (char c : strArray)
        {
            if(charCountMap.containsKey(c))
            {
                //If char is present in charCountMap, incrementing it's count by 1
                 
                charCountMap.put(c, charCountMap.get(c)+1);
            }
            else
            {
               
                 
                charCountMap.put(c, 1);
            }
        }
         
        
        for (char c : strArray)
        {
            if (charCountMap.get(c) == 1)
            {
                System.out.println("First Non-Repeated Character In '"+inputString+"' is '"+c+"'");
                 
                break;
            }
        }
         
        for (char c : strArray)
        {
            if (charCountMap.get(c) > 1)
            {
                System.out.println("First Repeated Character In '"+inputString+"' is '"+c+"'");
                 
                break;
            }
        }
    }
     
    public static void main(String[] args)
    {
        Scanner sc = new Scanner(System.in);
         
        System.out.println("Enter the string :");
         
        String input = sc.next();
         
        firstRepeatedNonRepeatedChar(input);
    }
}
Output :
Enter the string :
JavaConceptOfTheDay
First Non-Repeated Character In ‘JavaConceptOfTheDay’ is ‘J’
First Repeated Character In ‘JavaConceptOfTheDay’ is ‘a’

Comments

Popular posts from this blog

What is string immutability?