zoukankan      html  css  js  c++  java
  • 字符串回文算法

    在一个QQ群里看到一位朋友发这个题目:

    假设称正向读和反向读都相同的字符序列为“回文”,例如,“abba”和“abcba”是回文,“abcde”和“ababab”则不是回文。试设计一个算法判别读入的一个以“@”为结束符的字符序列是否是回文

    #include <vcl.h>
    #include <stdio.h>
    #pragma hdrstop

    //---------------------------------------------------------------------------

    #pragma argsused
    using namespace std;
    bool IsBack(AnsiString);
    int main(int argc, char* argv[])
    {
            
    bool b=IsBack("abcv@bcba");
            
    return 0;
    }
    bool IsBack(AnsiString str)
    {
            
    bool b=true;
            
    int middlelen=str.Length()/2;
            
    for(int i=0;i<middlelen;i++)
            {
                    
    char x=str.operator [](i+1);
                    
    char y=str.operator [](str.Length()-i);
                    
    if(x=='@'||y=='@')//要是abcv@@cba不算的话,此处应为 if(x=='@'&&y=='@')
                    {
                            b
    =i==0?false:true;
                            
    break;
                    }
                  
    if(x!=y)
                  {
                            b
    =false;
                            
    break;
                  }
            }
            
    return b;
    }
  • 相关阅读:
    day4
    cache用法
    Excel批量生成SQL语句,处理大量数据(增,改)
    IDEA中Maven依赖下载失败解决方案
    IDEA 自动生成类图 UML
    springboot报错说 Failed to parse multipart servlet request; nested exception is java.io.IOException
    controller层的引用service层一直报空指针问题
    CONCATENATE函数
    AQS
    String 类和常量池
  • 原文地址:https://www.cnblogs.com/magic_evan/p/1855990.html
Copyright © 2011-2022 走看看