gpt4 book ai didi

python - 将列表拆分为多个列表以获得加速?

转载 作者:太空宇宙 更新时间:2023-11-03 12:29:11 26 4
gpt4 key购买 nike

假设我的列表大约有 1,000,000 个条目。要访问一个项目,时间将是 O(500,000),这对我来说似乎很长。

当我将列表拆分为多个列表时会发生什么?让我们看一个例子:
将列表分成 10 个部分,我将得到如下列表:

splitted_list = [
[list with 100,000 entries],
[list with 100,000 entries],
[list with 100,000 entries],
[list with 100,000 entries],
[list with 100,000 entries],
[list with 100,000 entries],
[list with 100,000 entries],
[list with 100,000 entries],
[list with 100,000 entries],
[list with 100,000 entries]
]

访问一个项目的时间将是 O(5) + O(50,000) = O(50,005) 并提供大约 1000% 的加速!

当围绕它的根拆分原始列表时,在本例中为 1000,这将为我们提供一个包含 1000 个列表和另外 1000 个条目的列表。

splitted_list = [
[list with 1000 entries],
[list with 1000 entries],
[list with 1000 entries],
[list with 1000 entries],
...
]

现在看看访问一个项目的时间:

O(500) + O(500) = O(1000)
O(1000) < O(50,005) < O(500,000)

这是最佳加速大约 1000 倍!难以置信,我想,所以我的问题:

这是否也适用于实践,或者这只是理论?

最佳答案

从列表中按索引获取项目 is O(1)无论列表的大小如何。

关于python - 将列表拆分为多个列表以获得加速?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7024874/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com