美文网首页
二次时间算法

二次时间算法

作者: Challis | 来源:发表于2018-10-13 17:18 被阅读0次
def prefix_avg(list1):
  n = len(list1)
  avg = n * [0]
  for i in range(n):
    total = 0
    for j in range(i+1);
      total += list1[j]
    avg[i] = total/(i+1)
  return avg

total = sum(list1[0:i+1])       # 不用第二次遍历

i从0到n-1,运行了n次,所以外层的时间复杂度是O(n) , 里面的j的运行次数是1+2+3+...+n , 总的次数是 (1+n)n/2 ,时间复杂度是O(nn) , 所以总的时间复杂度是O(n*n)
sum() 直接求列表和的方法

相关文章

  • 二次时间算法

    i从0到n-1,运行了n次,所以外层的时间复杂度是O(n) , 里面的j的运行次数是1+2+3+...+n , ...

  • 希尔排序

    希尔排序(Shellsort)的名称源于它的发明者 Donald Shell,该算法是冲破二次时间屏障的第一批算法...

  • 操作系统基础 内存换页算法

    操作系统基础 内存换页算法 换页算法的分类 公平算法: 随机算法 先来先出(FIFO)算法 第二次机会算法 时钟算...

  • 限流框架系列之常见限流算法

    四种常见的限流算法 固定时间窗口限流算法 滑动时间窗口限流算法 令牌桶限流算法 漏桶限流算法 算法比较 算法确定参...

  • 时间复杂度和空间代价

    一、算法定义算法设计的目标:时间和空间、还有健壮和可读等。 二、算法分析1、时间复杂度算法的时间代价是指算法执行时...

  • 数据结构和算法分析(二)

    算法分析 算法时间复杂度 算法时间复杂度来度量算法的执行时间长短。 比较算法随着输入规模的增长量时,可以有以下规则...

  • 图片加载优化

    图片加载优化: 1.二次采样,减少图片对内存的占用 2.缓存,提高图片的访问速度 LRU算法(内存缓存算法) 3....

  • 程序设计算法汇总

    平时工作中会遇到一些有意思的算法或者数据结构,因为理解起来需要花费一些精力与时间,为了二次查阅时的时间节省,这里将...

  • 人工智能简述2

    第二次入门培训,重点介绍人工智能中经典算法和深度学习在自然语言的应用。 1. 经典算法:逻辑回归Logistic ...

  • hash 哈希查找复杂度为什么这么低?

    First of all,在众多搜索算法里,哈希算法时间最快,其时间复杂度为o(1)哈希算法,又称散列算法,能大大...

网友评论

      本文标题:二次时间算法

      本文链接:https://www.haomeiwen.com/subject/ubnoaftx.html