forked from TheAlgorithms/Java
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathPangram.java
39 lines (35 loc) · 1.11 KB
/
Pangram.java
1
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
package strings;
/**
* Wikipedia: https://en.wikipedia.org/wiki/Pangram
*/
public class Pangram {
/**
* Driver Code
*/
public static void main(String[] args) {
assert isPangram("The quick brown fox jumps over the lazy dog");
assert !isPangram("The quick brown fox jumps over the azy dog"); /* not exists l character */
}
/**
* Check if a string is a pangram string or not
*
* @param s string to check
* @return {@code true} if given string is pangram, otherwise {@code false}
*/
public static boolean isPangram(String s) {
boolean[] marked = new boolean[26]; /* by default all letters don't exists */
char[] values = s.toCharArray();
for (char value : values) {
if (Character.isLetter(value)) {
int index = Character.isUpperCase(value) ? value - 'A' : value - 'a';
marked[index] = true; /* mark current character exists */
}
}
for (boolean b : marked) {
if (!b) {
return false;
}
}
return true;
}
}