7-2 队列实现回文

编写一个程序判断一个字符串是否是回文。回文是指一个字符序列以中间字符为基准两边字符完全相同,如字符序列"ABCDEDCBA"就是回文,而字符序列"ABCDEDBAC"就不是回文。空格不计入字符

#include<bits/stdc++.h>
using namespace std;

int main()
{
    queue <char>q;
    char a[1000];
    scanf("%s",&a);
    int t=strlen(a);
    //入队
    for(int k=0;k<t;k++)
    {
        if(a[k]!=' ')
        {
            q.push(a[k]);
        }
        
    }
    //出队
    for(int j=t-1;j>=0;j--)
    {
        if(a[j]!=' ')
        {
            if(a[j]!=q.front())
            {
                printf("该字符串不是回文字符串");
                return 0;
            }
        }
        q.pop();
    }
    
    printf("该字符串是回文字符串");
    return 0;
}

 

posted @ 2022-10-24 23:50  旺旺大菠萝  阅读(48)  评论(0编辑  收藏  举报