We have to find the first non-repeating character from given string. For example, if the given string is “hello” then the output should be “h” because except “l” all are non-repeated.
Example – Program to find first non-repeated character
class NonRepeatingChar { static final int NO_OF_CHARS = 128; static char indexCount[] = new char[NO_OF_CHARS]; static int firstNonRepeatingCharacter(String originalString) { for (int i = 0; i < originalString.length(); i++) { indexCount[originalString.charAt(i)]++; } int index = -1; for (int i = 0; i < originalString.length(); i++) { if (indexCount[originalString.charAt(i)] == 1) { index = i; break; } } return index; } public static void main(String[] args) { String originalString = "hello"; int valueIndex = firstNonRepeatingCharacter(originalString); if (valueIndex == -1) { System.out.println("Either all characters are repeating or empty string"); } else { System.out.println("First non-repeating character is : " + originalString.charAt(valueIndex)); } } }
Output
First non-repeating character is : h
Example – Another way
public class NonRepeatingChar { public static void main(String[] args) { String originalString = "hello"; for (int i = 0; i < originalString.length(); i++) { boolean index = true; for (int j = 0; j < originalString.length(); j++) { if (i != j && originalString.charAt(i) == originalString.charAt(j)) { index = false; break; } } if (index) { System.out.println("The first non repeated character is: " + originalString.charAt(i)); break; } } } }
Output
The first non repeated character is: h