Как я могу игнорировать знаки препинания, заглавные буквы и пробелы в строковом палиндроме?
Я хочу игнорировать знаки препинания, заглавные буквы и пробелы из строкового палиндрома с помощью стека, чтобы:
Например:
Ввод: Мадам, я Адам
Выход: Да Палиндром
Здесь пробелы, знаки препинания и заглавные буквы игнорируются.
Что я уже пробовал:
class Stack { char[] arr; int index; int size; Stack(int size) { this.size=size; index=0; arr=new char[size]; } public boolean isFull() { return (index==size); } public boolean isEmpty() { return (index==0); } public void push(char e) { if(isFull()) System.out.print("Stack is Full"); arr[index]=e; index++; } public char pop() { if(isEmpty()) System.out.print("Stack is Empty"); return arr[--index]; } public static void main(String[] args) { String inputString = "Madam, I’m Adam"; Stack stack=new Stack(inputString.length()); for (int i = 0; i < inputString.length(); i++) { stack.push(inputString.charAt(i)); } String reverseString = ""; while (!stack.isEmpty()) { reverseString = reverseString+stack.pop(); } if (inputString.equals(reverseString)) System.out.println("Yes Palindrome"); else System.out.println("Not Palindrome"); } }
Maciej Los
Вы можете удалить ненужные символы. Пожалуйста смотрите: Java программа для удаления подстроки из строки