ex10_5回文串检查

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ex10_5回文串检查相关的知识,希望对你有一定的参考价值。

 

//
//  main.cpp
//  ex10_5
//
//  Created by a007 on 17/12/2.
//  Copyright ? 2017年 a007. All rights reserved.
//

#include <iostream>
using namespace std;

bool isPalindrome(const string &s){
    string test = "";
    for (auto c : s) {
        test += toupper(c); //统一大写(或小写)处理
    }
    
    auto begStr = begin(test);
    auto endStr = end(test) - 1;
    while (begStr < endStr) {
        if (*begStr != *endStr) {
            return false;
        }
        begStr++;
        endStr--;
    }
    return true;
}

int main(int argc, const char * argv[]) {
    string s;
    cout << "Enter a string s: ";
    cin >> s;
    
    if (isPalindrome(s)) {
        cout << s << " is a palindrome" << endl;
    }else{
        cout << s << " is not a palindrome" << endl;
    }
    return 0;
}

以上是关于ex10_5回文串检查的主要内容,如果未能解决你的问题,请参考以下文章

[5]. 最长回文子串

b_51_回文串划分(预处理+dp)

131. 分割回文串

131. 分割回文串-回溯算法 (leetcode)

LeetCode - 5 - Longest Palindromic Substring

算法竞赛入门经典 例题 3-4 回文串