题目:设计一个算法,判断用户输入的表达式中是否是回文(回文即左右对称的字符串)。
思路:这道题与判断表达式括号是否匹配类似,可使用顺序栈来解决,区别是回文要求每个字符都要求匹配,因此将字符串全部入栈,再全部出栈,将最后一个字符与第一个字符比较是否相同,依次比较,若全部相同则为回文。
代码:
#include<iostream>
#include<string>
using namespace std;
#define MaxSize 20
//字符串栈
class Stack
{
char *data;
int top;
public:
Stack();
~Stack();
bool IsEmpty();
bool Push(