python - 有什么比字典更快的吗?

标签 python dictionary n-gram

<分区>

我正在学习 n-gram,并构建一个字典来保存 n-gram 值。我有这样的东西:

{
  "it is" : 0.01,
  "this is" : 0.005,
  "hello i" : 0.2
  "hello you" : 0.3
  ...
}

我的字典有大约 300 万个键,需要 0.0002(s) 才能得到一个双字母值。

有什么比我可以使用的 dict 更快的东西吗?

最佳答案

不,我认为没有比 dict 更快的了。其索引检查的时间复杂度为O(1)

-------------------------------------------------------
Operation    |  Average Case  | Amortized Worst Case  |
-------------------------------------------------------
Copy[2]      |    O(n)        |       O(n)            | 
Get Item     |    O(1)        |       O(n)            | 
Set Item[1]  |    O(1)        |       O(n)            | 
Delete Item  |    O(1)        |       O(n)            | 
Iteration[2] |    O(n)        |       O(n)            | 
-------------------------------------------------------

附言https://wiki.python.org/moin/TimeComplexity

关于python - 有什么比字典更快的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47529386/

相关文章:

Python:计算非整数的阶乘

java - 我可以获取 map 的一部分并测试我使用的 key 吗?

mahout - apache mahout 中的 nGram

python - 抓取网页 <ul> <li>(Python)

python - 如何在 Python 3 中使用与 Linux、Mac 和 Windows 交叉兼容的文件路径打开和写入文件?

Python:获取命令输出并放入字典同时删除字符

python - 使用 Witten Bell Smoothing 在 nltk 中使用 NgramModel 训练和评估二元组/三元组分布

python - ngrams 结果令人惊讶 python

python - 使用 NumPy 的 Mittag-Leffler 函数不稳定

Javascript:从字符串数组创建字典