您的位置:首页 > 编程语言 > C语言/C++

[书摘]用C++库函数来判断一个单词是不是一个回文数

2009-07-06 10:38 344 查看
Code:

bool is_palindrome(const string& s)

{

return equal(s.begin(), s.end(), s.rbegin());

}

rbegin返回一个迭代器,它会从容器的最后一个元素开始,并且从后向前地逆序访问容器。

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

摘自《Accelerated C++》6.1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: