# Coding Challenge Day-2: Problem 2: Determine if a String has all unique characters

Hello! So I’m doing a 30 day coding challenge where I solve around 3-5 questions per day and thought of posting them here on my blog so that you guys can join the challenge too!

Welcome to Coding challenge Day 2: Problem two! Be sure to post your answers, queries etc in the comments!!

Problem: Determine if a String has all unique characters

Sample input: Root
Output: All characters in Root are not unique

Sample input: Flower
Output: All characters in Flower are unique

Sample input: Tech Art
Output: All characters in Tech Art are unique

Solution:

• Solved this assuming that the character set is ASCII
• So since there are only 128 unique elements in ASCII so if the length of the string is greater than 128 then of course there will be some duplicate characters
• create an boolean array where true indicates that that particular index is occupied by a corresponding character (ascii and index number are same) from string
• then we start taking out each character from the string
• check if the character at that index number in array is true or false
• if that index is already occupied then we return false
• if that index is not occupied then we write that character at corresponding index number in array
• if the function returns true then the string has all unique characters else all characters are not unique
``````package array;
//find if a given string has all unique elements
public class Program002unique_string {

public static boolean unique_check (String str){
if(str.length()>128) //128 is number of unique characters in ASCII
return false;

boolean [] array= new boolean[256];

for(int i=0; i<str.length(); i++){
int val= str.charAt(i);

if(array[val]==true){
return false;
}

array[val]=true;
}

return true;
}

public static void main (String [] args){
String str="Tech Art";
boolean r= unique_check(str);

if(!r)
System.out.printf("All characters in %s are not unique", str);
else
System.out.printf("All characters in %s are unique", str);
}

}
``````

Happy Learning!!

This site uses Akismet to reduce spam. Learn how your comment data is processed.