首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TapeEquilibrium O(N*N)

TapeEquilibrium O(N*N)
EN

Stack Overflow用户
提问于 2019-12-31 13:09:20
回答 1查看 148关注 0票数 0

有人能给我解释一下为什么这段代码的O(N*N)复杂性吗?我看不到它。Bellow是我针对这个Codility问题编写的python代码:

给出了由N个整数组成的非空数组A.数组A表示磁带上的数字。任何整数P,如0这两部分的区别是:x(A+ A1 +.+ AP−1)−(AP + AP +1+.+ AN−1),即第一部分和和与第二部分之和之间的绝对差。例如,假设数组A这样:a=3 A1 =1 A2 =2 A3 =4 A4 =3我们可以将该磁带分成四个部分: P= 1,差分=0=1,差分=0= 2,差分=0=2,差分= 4,差分=6−7=1 P=4,差分=0 0−3 =7写函数: def解(A),给定N个整数的非空数组A,返回可以达到的最小差。

我的Python代码

代码语言:javascript
复制
def solution(A):
    sum_array = []
    for i in range(1, len(A)):
        sum_array.append(abs(sum(A) - 2*sum(A[i:N])))
    return min(sum_array)
EN

回答 1

Stack Overflow用户

发布于 2020-01-26 14:04:15

计算阵列和的时间复杂度为O(N)。这是因为您需要访问每个数组元素。由于有一个N的循环,每次迭代都执行和(A),所以程序的时间复杂度是O(N*N)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59544534

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档