Logo
Section 1 / 8

简介

本课程简要概述了接下来你要学习的原因和内容。

导入

简介

本课程简要概述了接下来你要学习的原因和内容。

C++14 中的 std::search 提供了一种通用的方法,用于在指定范围内搜索某个模式。该算法不仅适用于字符容器,也适用于自定义类型的容器。然而,这种方法存在一定的局限性:性能通常较慢,因为它使用的是朴素匹配算法,时间复杂度为模式长度乘以文本长度。

从 C++17 开始,std::search 增加了新的重载版本,引入了如 Boyer-Moore 变体等更高效强大的算法,在平均情况下具有线性时间复杂度。

本章你将学到的内容?

  • 如何通过预处理模式来超越朴素搜索算法。
    • 如何使用 std::search 高效地在范围中查找模式。
    • 如何在自定义类型上使用 std::search。

让我们先对字符串匹配算法进行一个总体了解。

std::string_view

字符串匹配算法概述