判断字符串是否为回文串
程序员文章站
2024-03-17 21:25:58
...
public class Solution {
//(1)别人方法
public static boolean isPalindrome(String s) {
if(s.isEmpty()) return true;
String str = s.replaceAll("\\W", ""); // 使用正则去除非字符数字的字符
str = str.toLowerCase();
for(int i = 0; i < str.length(); i++) {
if(str.charAt(i) != str.charAt(str.length() - i -1)) {
return false;
}
}
return true;
}
//(2)自我实现
public boolean isPalindrome(String s) {
if(s.isEmpty()) return true;
s= s.replaceAll("\\W", "");
/* for(int i=0;i!=s.length();i++){
if((s.charAt(i)>='A'&&s.charAt(i)<='Z')||(s.charAt(i)>='a'&&s.charAt(i)<='z')){
str+=s.charAt(i);
}
}*/
return isHuiwen(s);
}
//判断一个字符串是否为回文
public boolean isHuiwen(String s){
String str=s.toLowerCase();
int i=0;
int j=s.length()-1;
while(str.charAt(i)==str.charAt(j)&&i!=j)
{
i++;
j--;
}
return i==j?true:false;
}
public static void main(String[]args){
//System.out.println("Hello World!");
Solution s=new Solution();
String str="A man, a plan, a canal: Panama";
String str2="race a car";
String str3=""; //字符串可以为数字,字母
System.out.println(s.isPalindrome(str));
System.out.println(s.isPalindrome(str2));
System.out.println(s.isPalindrome(str3));
System.out.println(str3.length());
}
}
推荐阅读
-
判断字符串是否为回文串
-
判断输入的字符串是否是回文
-
判断输入的字符串是否为回文
-
杭电2029回文字符串
-
字符串哈希 - HDU - 1880 询问字符串是否存在 哈希+map
-
LeetCode题解(0367):判断是否为完全平方数(Python)
-
【数据结构与算法】06. java判断字符串是否合法(栈)
-
使用函数判断完全平方数:输入一个正整数n,判断其是否为完全平方数,如果是,则输出”YES”,如果不是,则输出”NO”。要求定义并调用函数IsSquare(n),判断n是否为完全平方数。
-
检测一个字符串是否为回文
-
Gson 转json时字段没有值,json就没有该字段和替换字符串字段的值为null