우선 ASCII 문자열인지 유니코드 문자열인지 확인한다. ASCII 문자열이라고 가정하고 문제를 풀어보겠다.
public class QuestionA {
public static boolean isUniqueChars(String str) {
if (str.length() > 128) {
return false;
}
boolean[] char_set = new boolean[128];
for (int i = 0; i < str.length(); i++) {
int val = str.charAt(i);
if (char_set[val]) return false;
char_set[val] = true;
}
return true;
}
public static void main(String[] args) {
String[] words = {"abcde", "hello", "apple", "kite", "padle"};
for (String word : words) {
System.out.println(word + ": " + isUniqueChars(word));
}
}
}