编程序判断一个字符序列是否是回文,要求只使用堆栈,不使用队列.

注意:只使用堆栈用VC++编程谢谢能不能麻烦各位把编好的程序写出来啊,最好能在旁边写上注释本人很笨的,所以拜托了... 注意: 只使用堆栈

用VC++编程
谢谢
能不能麻烦各位把编好的程序写出来啊,最好能在旁边写上注释
本人很笨的,所以拜托了
展开
 我来答
silvergingko
2008-11-05 · TA获得超过5945个赞
知道小有建树答主
回答量:688
采纳率:0%
帮助的人:869万
展开全部
给个思路吧.先计算字符序列长度.然后用一个for循环将前面一半先入栈.然后再用一个for循环退栈做比较就可以了,大致的代码如下:
{
char tmp='\0';
int answer = 1;
int len = strlen(s);//自己注意下奇偶长度
for (i=0;i<len/2;i++)
{push(&s, s[i]);}//s为栈
for (;i<len; i++)
{tmp=pop(&s);if (tmp!=s) {answer=0;break;}}
return answer;//返回0不是回文,返回1是回文
}
给你的这个函数体可以做些优化的,但这样写主要是给你个思路.怕优化了你会产生新的疑问.
优化的事情有:2个函数体并为一个,for的条件用s[i]!='\0',而不是用i<len.
肥博裕姬孟
2019-02-22 · TA获得超过2.9万个赞
知道大有可为答主
回答量:1.1万
采纳率:29%
帮助的人:738万
展开全部
给个思路吧.先计算字符序列长度.然后用一个for循环将前面一半先入栈.然后再用一个for循环退栈做比较就可以了,大致的代码如下:
{
char
tmp='\0';
int
answer
=
1;
int
len
=
strlen(s);//自己注意下奇偶长度
for
(i=0;i
评论
0
0
0
加载更多
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式