首页 > 解决方案 > 有没有办法添加两个具有恒定时间复杂度的列表或数组的元素?

问题描述

我正在尝试在时间复杂度 O(1) 的 python 中添加两个列表的元素。有什么办法可以实现吗?

我已经尝试过使用 numpy 来解决这个问题,但效果不佳。

import numpy as np
st = 0
n = int(input())
end = n
l = np.array([0]*n)
l1 = np.array([1]*n)
l[st:end]+=l1[st:end]

标签: pythonarrayslistnumpytime-complexity

解决方案


不,如果你有数百万个数字,你将不得不执行数百万个加法。没有办法在恒定时间内实现这一点(O(1))。


推荐阅读