Skip to content

Instantly share code, notes, and snippets.

@josescalia
Forked from iboB/PalindromeChecker.java
Created November 14, 2011 11:01

Revisions

  1. @iboB iboB revised this gist Nov 14, 2011. 1 changed file with 0 additions and 2 deletions.
    2 changes: 0 additions & 2 deletions PalindromeChecker.java
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,3 @@
    package hellojava;

    public class PalindromeChecker {
    public static void main(String[] args) {
    String[] sWordsToCheck = new String[] {
  2. @iboB iboB revised this gist Nov 14, 2011. No changes.
  3. @iboB iboB revised this gist Nov 14, 2011. 1 changed file with 3 additions and 1 deletion.
    4 changes: 3 additions & 1 deletion PalindromeChecker.java
    Original file line number Diff line number Diff line change
    @@ -4,7 +4,9 @@ public class PalindromeChecker {
    public static void main(String[] args) {
    String[] sWordsToCheck = new String[] {
    "gatemannametag", //p
    "abcdefghijklmnopqrtuvwxyz" // not p
    "abcdefghijklmnopqrtuvwxyz", // not p
    "aaaaa1aaaaa", //p
    "aaaaa12aaaaa", // not p
    };

    for(int i=0; i<sWordsToCheck.length; ++i) {
  4. @iboB iboB revised this gist Nov 14, 2011. 1 changed file with 29 additions and 24 deletions.
    53 changes: 29 additions & 24 deletions PalindromeChecker.java
    Original file line number Diff line number Diff line change
    @@ -1,29 +1,33 @@
    package hellojava;

    public class PalindromeChecker {
    public static void main(String[] args) {
    String sWordToCheck = "malam";

    System.out.println("Using palindrome1 : ");
    if(isPalindrome1(sWordToCheck))
    System.out.println(sWordToCheck + " Is Palindrome ");
    else
    System.out.println(sWordToCheck + " Is Not Palindrome ");

    System.out.println("\n");

    System.out.println("Using palindrome2 : ");
    if(isPalindrome2(sWordToCheck))
    System.out.println(sWordToCheck + " Is Palindrome ");
    else
    System.out.println(sWordToCheck + " Is Not Palindrome ");

    System.out.println("\n");

    System.out.println("Using palindrome3 : ");
    if(isPalindrome2(sWordToCheck))
    System.out.println(sWordToCheck + " Is Palindrome ");
    else
    System.out.println(sWordToCheck + " Is Not Palindrome ");
    String[] sWordsToCheck = new String[] {
    "gatemannametag", //p
    "abcdefghijklmnopqrtuvwxyz" // not p
    };

    for(int i=0; i<sWordsToCheck.length; ++i) {
    String sWordToCheck = sWordsToCheck[i];

    System.out.print("palindrome1: ");
    if(isPalindrome1(sWordToCheck))
    System.out.println(sWordToCheck + " Is a Palindrome ");
    else
    System.out.println(sWordToCheck + " Is Not a Palindrome ");

    System.out.print("palindrome2: ");
    if(isPalindrome2(sWordToCheck))
    System.out.println(sWordToCheck + " Is a Palindrome ");
    else
    System.out.println(sWordToCheck + " Is Not a Palindrome ");

    System.out.print("palindrome3: ");
    if(isPalindrome2(sWordToCheck))
    System.out.println(sWordToCheck + " Is a Palindrome ");
    else
    System.out.println(sWordToCheck + " Is Not a Palindrome ");
    }

    }

    @@ -49,6 +53,7 @@ public static boolean isPalindrome1(String word) {


    public static boolean isPalindrome2(String sWord) {
    int len = sWord.length();
    int halfLen = sWord.length()/2;
    for (int i = 0; i < halfLen; i++) {
    if (sWord.charAt(i) != sWord.charAt(len - i - 1)) {
    @@ -58,4 +63,4 @@ public static boolean isPalindrome2(String sWord) {

    return true;
    }
    }
    }
  5. @iboB iboB revised this gist Nov 14, 2011. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions PalindromeChecker.java
    Original file line number Diff line number Diff line change
    @@ -49,8 +49,8 @@ public static boolean isPalindrome1(String word) {


    public static boolean isPalindrome2(String sWord) {
    int len = sWord.length();
    for (int i = 0; i < (len % 2); i++) {
    int halfLen = sWord.length()/2;
    for (int i = 0; i < halfLen; i++) {
    if (sWord.charAt(i) != sWord.charAt(len - i - 1)) {
    return false;
    }
  6. josescalia created this gist Nov 14, 2011.
    61 changes: 61 additions & 0 deletions PalindromeChecker.java
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,61 @@
    public class PalindromeChecker {
    public static void main(String[] args) {
    String sWordToCheck = "malam";

    System.out.println("Using palindrome1 : ");
    if(isPalindrome1(sWordToCheck))
    System.out.println(sWordToCheck + " Is Palindrome ");
    else
    System.out.println(sWordToCheck + " Is Not Palindrome ");

    System.out.println("\n");

    System.out.println("Using palindrome2 : ");
    if(isPalindrome2(sWordToCheck))
    System.out.println(sWordToCheck + " Is Palindrome ");
    else
    System.out.println(sWordToCheck + " Is Not Palindrome ");

    System.out.println("\n");

    System.out.println("Using palindrome3 : ");
    if(isPalindrome2(sWordToCheck))
    System.out.println(sWordToCheck + " Is Palindrome ");
    else
    System.out.println(sWordToCheck + " Is Not Palindrome ");


    }


    public static boolean isPalindrome3(String sWordToCheck) {
    return sWordToCheck.equals(new StringBuffer(sWordToCheck).reverse().toString());
    }

    public static boolean isPalindrome1(String word) {
    int left = 0; // index of leftmost unchecked char
    int right = word.length() - 1; // index of the rightmost

    while (left < right) { // continue until they reach center
    if (word.charAt(left) != word.charAt(right)) {
    return false; // if chars are different, finished
    }
    left++; // move left index toward the center
    right--; // move right index toward the center
    }

    return true; // if finished, all chars were same
    }


    public static boolean isPalindrome2(String sWord) {
    int len = sWord.length();
    for (int i = 0; i < (len % 2); i++) {
    if (sWord.charAt(i) != sWord.charAt(len - i - 1)) {
    return false;
    }
    }

    return true;
    }
    }