//运用栈判断字符串是否为回文 import java.util.Stack; public class Huiwen { //判断回文 public static void main(String[] args) { System.out.println(new Huiwen().Ishui("上海自来水来自海上")); } protected Boolean Ishui(String str){ Stack<Character> st = new Stack<Character>(); char ch[] = str.toCharArray(); boolean flag = true; int mid = ch.length / 2; for (int i = 0; i < mid; i++) { st.push(ch[i]); } for (int i = ch.length % 2==1 ? mid+1 : mid ; i < ch.length; i++) { if(ch[i] != st.pop()){ flag = false; break; } } return flag; } } |
|