Valid Palindrome

来源:互联网 发布:健身器材 知乎 编辑:程序博客网 时间:2024/06/07 00:38

题目

Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.

For example,

"A man, a plan, a canal: Panama" is a palindrome.

"race a car" is not a palindrome.

Note:

Have you consider that the string might be empty? This is a good question to ask during an interview.

For the purpose of this problem, we define empty string as valid palindrome.

方法

简单的判断是不是回文字符串,注意空串的情况。

    public boolean isPalindrome(String s) {       if (s == null) {    return true;    }        int len = s.length();       int i = 0;     int j = len - 1;    while(i < j) {    char first = s.charAt(i);    if (Character.isLetterOrDigit(first)) {    char last = s.charAt(j);    if (Character.isLetterOrDigit(last)) {    first = Character.toLowerCase(first);    last = Character.toLowerCase(last);    if (first != last) {    return false;    } else {    i++;    j--;    }    } else {    j--;    }    }else {    i++;    }    }        return true;    }



0 0
原创粉丝点击