当前位置: 首页 > news >正文

做网站cookie传值电子商务网站建设步

做网站cookie传值,电子商务网站建设步,建设网站需要什么技术支持,汕头关键词优化服务均摊时间复杂度,它对应的分析方法,摊还分析(或者叫平摊分析) 均摊时间复杂度应用的场景比它更加特殊、更加有限 // array表示一个长度为n的数组// 代码中的array.length就等于nint[] array new int[n];int count 0;void insert…

均摊时间复杂度,它对应的分析方法,摊还分析(或者叫平摊分析)

均摊时间复杂度应用的场景比它更加特殊、更加有限

// array表示一个长度为n的数组// 代码中的array.length就等于nint[] array = new int[n];int count = 0;void insert(int val) {if (count == array.length) {int sum = 0;for (int i = 0; i < array.length; ++i) {sum = sum + array[i];}array[0] = sum;count = 1;}array[count] = val;++count;}

这段代码实现了一个往数组中插入数据的功能。当数组满了之后,也就是代码中的 count == array.length 时,我们用 for 循环遍历数组求和,并清空数组,将求和之后的 sum 值放到数组的第一个位置,然后再将新的数据插入。但如果数组一开始就有空闲空间,则直接将数据插入数组。

先分析上述代码的时间复杂度

最理想的情况下,数组中有空闲空间,我们只需要将数据插入到数组下标为 count 的位置就可以了,所以最好情况时间复杂度为 O(1)。最坏的情况下,数组中没有空闲空间了,我们需要先做一次数组的遍历求和,然后再将数据插入,所以最坏情况时间复杂度为 O(n)。

平均时间复杂度是多少呢?答案是 O(1)

假设数组的长度是 n,根据数据插入的位置的不同,我们可以分为 n 种情况,每种情况的时间复杂度是 O(1)。除此之外,还有一种“额外”的情况,就是在数组没有空闲空间时插入一个数据,这个时候的时间复杂度是 O(n)。而且,这 n+1 种情况发生的概率一样,都是 1/(n+1)。所以,根据加权平均的计算方法,我们求得的平均时间复杂度就是:

上述的分析过于复杂

可以使用摊还分析法,通过摊还分析得到的时间复杂度我们起了一个名字,叫均摊时间复杂度。

每一次 O(n) 的插入操作,都会跟着 n-1 次 O(1) 的插入操作,所以把耗时多的那次操作均摊到接下来的 n-1 次耗时少的操作上,均摊下来,这一组连续的操作的均摊时间复杂度就是 O(1)。这就是均摊分析的大致思路。

听起来很复杂,但是均摊时间复杂度就是一种特殊的平均时间复杂度,我们没必要花太多精力去区分它们。你最应该掌握的是它的分析方法,摊还分析。至于分析出来的结果是叫平均还是叫均摊,这只是个说法,并不重要。

此文章为5月Day6学习笔记,内容来源于极客时间《数据结构与算法之美》

http://www.yayakq.cn/news/146418/

相关文章:

  • 网站建站系统程序濮阳网站网站建设
  • 插画设计网站推荐住建部2017建设工程合同范本
  • 怎么才能百度做网站长春品牌网站建设公司
  • 做的网站怎么在电脑上预览网站建设与 宣传关系
  • 长沙网站制作与设计怎么注册公司域名
  • 杭州cms建站模板下载建设一个交易网站要用多少钱
  • 有没有专门做商铺招商的网站社交移动电子商务平台有哪些
  • 多个网站给一个网站推广网络推广公司司
  • 做网站美工未来规划国内外设计网站
  • 海东电子商务网站建设怎么做网页 网站制作
  • 城阳网站开发服装公司网站建设开题报告
  • 建网站主机广州网站网站建设
  • 手机搜索网站建设建筑公司企业简介模板
  • 黄金网站大全免费做网站成功的企业
  • 学校网站建设的难点设计师主题 wordpress
  • 怎么提高网站关键字排名少年宫网站建设模块
  • 买的服务器做两个网站WordPress静态文件存储
  • 做视频教学网站东莞市企业网站建设平台
  • 怎么免费搭建属于自己的网站免费的行情软件网站不下载
  • 可以做动态图表的网站织梦医院网站源码
  • 非响应式网站改响应式淄博网站制作高端营销
  • 网站开发课设心得手机网站建设创意新颖
  • 代做毕业设计网站现成ui设计需要学什么软件
  • 网站建设 音频插件安庆城乡建设局网站
  • 怎么给网站加友情链接企业信息的网站
  • 企业网站上线培训心得简短
  • 衡阳网站设计有创意的包装设计
  • 专门做图的网站在线图表
  • 网站建设与管理计划书深圳深圳网站制作
  • 手机网站设计制作公司网站建设包括