diff options
author | Michael Hunteman <michael@michaelted.xyz> | 2022-09-22 10:14:04 -0500 |
---|---|---|
committer | Michael Hunteman <michael@michaelted.xyz> | 2022-09-22 10:14:04 -0500 |
commit | 6522012065712fb0ece31bff9ff10b38a83b10e1 (patch) | |
tree | 743f3c13d08be9f60bad57b74e7a1fe7cc675e89 /Palindrome.java |
Initial commit
Diffstat (limited to 'Palindrome.java')
-rw-r--r-- | Palindrome.java | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/Palindrome.java b/Palindrome.java new file mode 100644 index 0000000..2c1ca47 --- /dev/null +++ b/Palindrome.java @@ -0,0 +1,30 @@ +import java.lang.*; +import java.util.*; + +class Palindrome { + public static boolean isPalindrome(String s) { + s = s.toLowerCase(); + char[] nonAlpha = s.toCharArray(); + ArrayList<Character> alpha = new ArrayList<Character>(); + for (char c : nonAlpha) { + if (Character.isLetter(c)) + alpha.add(c); + } + + int i = 0; + int j = alpha.size() - 1; + while (i < j) { + if (alpha.get(i) != alpha.get(j)) + return false; + i++; + j--; + } + + return true; + } + + public static void main(String[] args) { + String s = "A man, a plan, a canal: Panama"; + System.out.println(isPalindrome(s)); + } +} |