python - 在 O(1) 时间内为 python 中的空列表分配空间
问题描述
我有一种情况,我有一个确定的输入范围,因此,可以通过创建一个输入范围大小的列表并自行索引输入来完全在 O(1) 中进行索引。为了更清楚,我基本上有以下情况
a = "inputrange"
rng = ord(max(a)) - ord(min(s))
data = [None] * rng
我的问题是,我不确定分配过程是否data
为 O(1)。直观地说,在 O(1) 中应该有一些方法可以做到这一点,因为在堆栈上我只是为数据定义一个起点和终点,因此应该只需要 O(1) 时间来分配,但是 python有点远离这个所以我不能确定。
我可以在 O(1) 中分配非常重要,因为我正在为输入数据创建一个后缀树,因此为了确保在遍历树时进行 O(1) 索引,我需要一个字母表大小的列表(或哈希图,虽然我避免使用这些),但由于我基本上为每个后缀分配,所以我需要分配保持不变。
我的另一个想法是创建一个“模板”列表并将其复制过来,但是复制需要 O(n) 时间,所以这行不通。
编辑:这不是“什么是时间复杂度[var]*n
”的重复,我明确表示我正在寻找一种方法来列出 O(1) 中的内存分配。仅仅因为我碰巧将其[var]*n
用作分配此内存的当前方法,并不意味着通过了解此方法的复杂性来回答它。
问题仍然存在:有没有办法在 O(1) 时间内为 python 中的空列表分配空间
解决方案
推荐阅读
- angular - 如何从 Typescript 中的数据类型创建假对象以进行测试
- javascript - Discord.Client 不是构造函数
- python - 将excel中的多行重新格式化为可用(多)索引
- arrays - 我是循环遍历还是通过 Excel 中的数组添加数字
- javascript - 我的 JQueryAutocomplete 不会在 asp net webForm 中工作
- android - 如何在适配器类中使用数据绑定和泛型?
- php - How can I change my plugins default page name in WordPress?
- python - Python 流式传输文本文件
- javascript - 我是 redux 的新手并做出反应我正在尝试更新 REDUX 存储中的嵌套状态,但无法对其进行排序
- xpath - 比较 XSLT 代码中的日期时出现无效日期问题