java中利用栈实现字符串回文算法,回文,字符串,字符,字母,下标
java中利用栈实现字符串回文算法
易采站长站,站长之家为您整理了java中利用栈实现字符串回文算法的相关内容。
问题
给定一个由多个a和b组成的字符串数组,字符串中有一个特殊的字符X,位于字符串的正中间,例如(aaaabbbbXabaabbbb),如何判定该字符串是否回文
简单算法
定义两个下标分别指向字符串的头和尾,每次比较两个下标位置的值是否相等,如果不相等,那么输入的
字符串不是回文,如果相等,左边的下表加1,右边的下表减1,重复上述步骤直至两个下标都指向字符串的正中间或者确定字符串不是回文
/**
* 判断字符串是否是回文
*/
public int isPalindrome(String inputStr) {
int i = 0;
int j = inputStr.length();
char[] chars = inputStr.toCharArray();
while (i < j && chars[i] == chars[j]) {
i++;
j--;
}
if (i < j) {
System.out.println("Not a Palindrome");
return 0;
} else {
System.out.println("Palindrome");
retu