利用栈判断回文字符串问题

问题描述:编写一个函数,判断一个字符序列是否为回文序列,要求只使用栈来实现

涉及变量:list:String型变量,要判断的字符序列

                   i,j:int型变量,表示将字符串变为字符数组中的下标

                   member:char型变量,用于表示出栈的字符型变量

涉及教材:《数据结构——Java语言描述(第2版)》 清华大学出版社

大致思路:先将字符串用charAt(int index)方法变成字符型变量,再将字符型变量依次入栈

入栈后字符型变量变为Object型变量,出栈时需要先强制转换为Character型变量,再用charValue()方法变成char型变量

将出栈的变量存放在member中,与字符串中字符从下标为0处开始比较

如图,list.charAt(i)(i:0==>length()-1)的数据元素与出栈元素顺序相反

若相同顺序与相反顺序所得元素一致,说明为回文字符串

否则不是回文字符串

代码如下:

猜你喜欢

转载自www.cnblogs.com/rewivy/p/10307852.html