【发布时间】:2021-07-07 03:25:48
【问题描述】:
在 Python 中,我们可以使用in 在字符串、列表、集合等中进行搜索,例如if x in string:
但是内部实现了哪种搜索算法?
【问题讨论】:
-
副本只回答您对字符串的问题,但无论如何,每种类型的实现都是不同的。您可以考虑阅读 CPython 的源代码以了解特定的实现。
在 Python 中,我们可以使用in 在字符串、列表、集合等中进行搜索,例如if x in string:
但是内部实现了哪种搜索算法?
【问题讨论】:
实施的搜索算法由供应商自行决定。为此,您需要查阅供应商的文档。另请注意,算法会因数据类型而异:不受限制的序列将需要某种形式的线性搜索;排序的将有二等分或插值; dicts 和 sets 使用恒定时间哈希键。
【讨论】: