关于力扣LeetCode第125题验证回文串
我是用栈的方式解决的,将所有字母数字全部入栈,再全部出栈后就能得到反转,将入栈的内容与出栈的内容对比,完全相等那就是回文串了
缺点就是 没有优点,速度慢 内存占用高,只是作为一种思路延伸吧,初学,看官勿喷
//125. 验证回文串
public boolean isPalindrome(String s) {
s=s.toLowerCase(); // 不区分大小写
Stack mainStack=new Stack();
StringBuilder sb=new StringBuilder(); // 保存入栈的内容
StringBuilder sbReverse=new StringBuilder(); // 保存出栈的内容
for(char a:s.toCharArray()){
if(Character.isLetterOrDigit(a)){ //将数字与字母入栈
mainStack.push(a);
sb.append(a);
}
}
while(!mainStack.empty()){ //出栈
sbReverse.append(mainStack.pop());
}
if(sb.toString().equals(sbReverse.toString())){
return true;
}else {
return false;
}
}