zoukankan      html  css  js  c++  java
  • 用c++库函数轻松解决回文问题

    《Accelerated C++》6.1学到的,这个解决回文问题的方案很简单,有必要把它记录下来。

    begin返回一个迭代器,它会从容器的最后一个元素开始,并且从后向前地逆序访问容器。
    equal函数比较了两个序列以判断它们是否包含是相等的值。传递给equal的头两个迭代器指定了第一个序列。第三个参数则是第二个序列的起点。equal函数假定第二个序列的长度与第一个相同,因此它并不需要一个结尾迭代器。我们传递s.rbegin()以作为第二个序列的起点,这个调用的作用是从s的结尾向前逆向地比较数值。equal函数将把s中的第一个字符和最后一个比较。用这个去做HD2029可以秒杀。

    #include<iostream> 
    #include<string>
    #include<vector>
    using namespace std; 
    bool is_palindrome(const string & s) {   
      return equal(  s.begin() , s.end() ,s.rbegin()); 
    } 
    int main(){
        string s;
        while(cin>>s)
            cout<<is_palindrome(s);
        return 0;
    }
  • 相关阅读:
    作业3
    学习进度
    作业2
    介绍自己,并介绍github注册过程和初步使用
    mysql显示中文乱码问题解决
    数学能力测试
    C++ Primer总结
    shell脚本
    完全二叉树
    test命令的测试功能
  • 原文地址:https://www.cnblogs.com/LZYY/p/3246260.html
Copyright © 2011-2022 走看看