qq_31989533 2015-11-08 01:28 采纳率: 0%
浏览 4163

判断是否为回文 实现顺序栈各种基本运算的算法

int IsHuiwen( char *t)
{//判断t字符向量是否为回文,若是,返回1,否则返回0
SqStack s;
int i , len;
char temp;
InitStack( &s);
len=strlen(t); //求向量长度
for ( i=0; i<len/2; i++)//将一半字符入栈
Push( &s, t[i]);
while( !EmptyStack( &s))
{// 每弹出一个字符与相应字符比较
temp=Pop (&s);
if( temp!=S[i])  return 0 ;// 不等则返回0
else i++;

return 1 ; // 比较完毕均相等则返回 1
}
我运行后总是错误,求解答~

  • 写回答

1条回答

  • havedream_one 2015-11-08 03:10
    关注

    1、for ( i=0; i<len/2; i++)//将一半字符入栈应该写成i<=len/2
    2、for结束之后判断,如果长度是奇数,i++(跳过中间的);偶数不用

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器