Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static boolean isPalindrome_r(String word){
- int beginning = 0;
- int end = word.length() - 1;
- if(word.charAt(beginning) == word.charAt(end)){
- return (isPalindrome_r(word.substring(1, word.length() - 1)));
- }
- else if (word.charAt(beginning) != word.charAt(end)){
- return false;
- }
- return false;
- }
- public static boolean isPalindrome_nr(String word){
- int beginning = 0;
- int end = word.length() - 1;
- boolean pd = true;
- for (int i = end; i>=0; i--){
- if(word.charAt(i) != word.charAt(end-i)){
- pd = false;
- }
- }
- return pd;
- }
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- System.out.println("Is the string a palindrome or not? ");
- String test = "test";
- String test_2 = "level";
- String test_3 = "application";
- System.out.println("Answer: " + isPalindrome_r(test));
- System.out.println("Answer: " + isPalindrome_r(test_2));
- System.out.println("Answer: " + isPalindrome_r(test_3));
- System.out.println("Answer: " + isPalindrome_nr(test));
- System.out.println("Answer: " + isPalindrome_nr(test_2));
- System.out.println("Answer: " + isPalindrome_nr(test_3));
- }
- Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -1
- at java.lang.String.substring(Unknown Source)
- at assignment1cs.recursion.isPalindrome_r(recursion.java:12)
- at assignment1cs.recursion.isPalindrome_r(recursion.java:12)
- at assignment1cs.recursion.isPalindrome_r(recursion.java:12)
- at assignment1cs.recursion.main(recursion.java:80)
- public static boolean isPalindrome(String s) {
- int length = s.length();
- if (s.isEmpty() || length == 1)
- return true;
- return s.charAt(0) != s.charAt(length - 1) ? false : isPalindroma(s.substring(1,length - 1));
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement