寻找一种更有效的方法来使用 STL 函数检查字符串是否为回文

康斯坦丁·特斯拉

我实现了以下有效的代码。

bool isPalindrome(const std::string& str)
{
    std::string rstr = str;
    reverse(rstr.begin(), rstr.end());
    if (str == rstr)
        return true;
    else
    return false;
}

但是,我想知道是否有更有效的方法来做到这一点?特别是来自字符串类的函数。

例如,不是创建一个新变量来存储反转的字符串,而是执行类似的操作?

if (str == std::string{ reverse{str.begin(), str.end()})

我知道这行不通,因为 str 是对 const 字符串的引用。我找不到任何利用 STL 函数以更好的方式解决这个问题的代码。

另一个问题,为什么我不能做这样的事情而不是 if 语句?

str == rstr ? return true : return false;
Yakk - Adam Nevraumont
std::equal(str.begin(), str.begin()+str.size()/2, str.rbegin(), str.rbegin()+str.size()/2);

std::equal取 2 对 4 个迭代器。它将第一个范围与第二个范围进行比较。

对于回文,您只需检查一半(向下取整)字符。

rbegin 是一个反向迭代器——它以相反的顺序迭代字符串。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用C中的函数检查字符串是否为回文

来自分类Dev

是否有一种班轮或更有效的方法来完成此任务?

来自分类Dev

检查字符串是否是回文(使用方法)

来自分类Dev

一种更有效的方法来检查是否没有相关项目具有特定值

来自分类Dev

Javascript函数,用于检查字符串是否为有效日期

来自分类Dev

是否有一种更有效的方法来将图像居中在浮动div中

来自分类Dev

用于检查字符串是否为不是方法的大写的函数

来自分类Dev

寻找一种更短,更有效的方式来添加(可能)重复到字符串末尾的内容

来自分类Dev

Ruby检查字符串是否为空的方法?

来自分类Dev

使用isEmpty()检查字符串是否为null

来自分类Dev

检查给定字符串是否为C回文的有效方法

来自分类Dev

检查给定字符串是否为C回文的有效方法

来自分类Dev

python检查字符串是否为空-这是一种优雅的方法

来自分类Dev

使用时刻检查字符串是否为有效日期

来自分类Dev

需要一种有效的方法来从JSON字符串获取JObject

来自分类Dev

SQL:如何在不使用反向函数的情况下检查字符串的回文?

来自分类Dev

有没有更有效的方法来使用 C 为问答游戏创建计数器?

来自分类Dev

有没有一种方法来检查字符串是否为erlang中的字母数字

来自分类Dev

除了使用R base函数以外,是否有一种有效的方法来获得“ pmax”?

来自分类Dev

有没有更有效的方法来检查字符串中的字符?

来自分类Dev

有没有更有效的方法来检查字符串中的字符?

来自分类Dev

检查字符串是否为有效数字(根本没有字母)

来自分类Dev

检查字符串在XSLT中是否为有效日期

来自分类Dev

Perl:检查字符串是否为有效目录,区分大小写

来自分类Dev

如何检查字符串是否为有效的Joda DateTime

来自分类Dev

如何检查字符串是否为图像的有效URL?

来自分类Dev

C#检查字符串是否为有效的WebProxy格式

来自分类Dev

如何检查字符串是否为有效日期?

来自分类Dev

如何检查字符串是否为有效整数?

Related 相关文章

  1. 1

    使用C中的函数检查字符串是否为回文

  2. 2

    是否有一种班轮或更有效的方法来完成此任务?

  3. 3

    检查字符串是否是回文(使用方法)

  4. 4

    一种更有效的方法来检查是否没有相关项目具有特定值

  5. 5

    Javascript函数,用于检查字符串是否为有效日期

  6. 6

    是否有一种更有效的方法来将图像居中在浮动div中

  7. 7

    用于检查字符串是否为不是方法的大写的函数

  8. 8

    寻找一种更短,更有效的方式来添加(可能)重复到字符串末尾的内容

  9. 9

    Ruby检查字符串是否为空的方法?

  10. 10

    使用isEmpty()检查字符串是否为null

  11. 11

    检查给定字符串是否为C回文的有效方法

  12. 12

    检查给定字符串是否为C回文的有效方法

  13. 13

    python检查字符串是否为空-这是一种优雅的方法

  14. 14

    使用时刻检查字符串是否为有效日期

  15. 15

    需要一种有效的方法来从JSON字符串获取JObject

  16. 16

    SQL:如何在不使用反向函数的情况下检查字符串的回文?

  17. 17

    有没有更有效的方法来使用 C 为问答游戏创建计数器?

  18. 18

    有没有一种方法来检查字符串是否为erlang中的字母数字

  19. 19

    除了使用R base函数以外,是否有一种有效的方法来获得“ pmax”?

  20. 20

    有没有更有效的方法来检查字符串中的字符?

  21. 21

    有没有更有效的方法来检查字符串中的字符?

  22. 22

    检查字符串是否为有效数字(根本没有字母)

  23. 23

    检查字符串在XSLT中是否为有效日期

  24. 24

    Perl:检查字符串是否为有效目录,区分大小写

  25. 25

    如何检查字符串是否为有效的Joda DateTime

  26. 26

    如何检查字符串是否为图像的有效URL?

  27. 27

    C#检查字符串是否为有效的WebProxy格式

  28. 28

    如何检查字符串是否为有效日期?

  29. 29

    如何检查字符串是否为有效整数?

热门标签

归档