【发布时间】:2014-02-22 05:35:03
【问题描述】:
import java.util.*;
public class FindingPalindrome {
private String inputString;
private Stack<Character> stack = new Stack<Character>();
public FindingPalindrome(String str)
{
inputString = str;
fillStack();
}
public void fillStack()
{
for(int i = 0; i < inputString.length(); i++)
{
stack.push(inputString.charAt(i));
}
}
public String reverseString()
{
String result = new String();
while(!stack.isEmpty())
{
result = result.concat(Character.toString(stack.pop()));
}
return result;
}
public boolean isPalindrome()
{
if(inputString.equalsIgnoreCase(reverseString()))
return true;
else return false;
}
}
public class TestPalindrome {
public static void main(String args[])
{
String inputString ="Straw? No, too stupid a fad. I put soot on warts";
String inputString1 = inputString.toLowerCase().replaceAll("[^a-z]","");
FindingPalindrome p = new FindingPalindrome(inputString );
if(p.isPalindrome())System.out.println("Is palindrome!");
else System.out.println("Is not palindrome!");
}
}
以上是 Stack 测试 Palindrome 的代码。一切正常,但回文输出不正确
【问题讨论】:
-
我认为它的计数空间是字符
标签: java stack palindrome