import java.util.Date;
/**
* LeetCode 125. 验证回文串
* 如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个回文串 。
* <p>
* 字母和数字都属于字母数字字符。
* <p>
* 给你一个字符串 s,如果它是 回文串 ,返回 true ;否则,返回 false 。
*
* @author rediaz
* @date 2024-05-19
*/
public class _004isPalindrome {
public static boolean isPalindrome(String s) {
String lowerCase = s.replaceAll("[^0-9a-zA-Z]", "").toLowerCase();
StringBuilder stringBuilder = new StringBuilder(s.replaceAll("[^0-9a-zA-Z]", "").toLowerCase());
StringBuilder reverse = stringBuilder.reverse();
return (reverse.toString()).equals(lowerCase);
// 简写:
//return s.replaceAll("[^0-9a-zA-Z]", "").toLowerCase().equals(new StringBuilder(s.replaceAll("[^0-9a-zA-Z]", "").toLowerCase()).reverse().toString());
}
public static void main(String[] args) {
System.out.println(isPalindrome("A man, a plan, a canal: Panama"));
System.out.println(isPalindrome("race a car"));
}
}
算法--LeetCode 125. 验证回文串
最新推荐文章于 2024-06-01 23:14:10 发布