方法一:从中间向两头比较
public static boolean isPalindrome(String str){
if (str == "" || str == null) {
return false;
}
char[] c = str.toCharArray();
int maxIndex = c.length - 1;
boolean isPalindrome=true;
for (int i=(maxIndex-1)>>1;i>=0;i--) {
if (c[i] != c[maxIndex - i]) {
isPalindrome=false;
break;
}
}
return isPalindrome;
}
方法二:从两头向中间比较
public static boolean isPalindrome(String str) {
if (str == "" || str == null) {
return false;
}
char[] c = str.toCharArray();
int head = 0, tail = c.length - 1;
while (head < tail) {
if (c[head] != c[tail]) {
return false;
}
head++;
tail--;
}
return true;
}
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步