时间复杂度

您所在的位置:网站首页 时间复杂度口诀 时间复杂度

时间复杂度

2024-07-13 07:14:57| 来源: 网络整理| 查看: 265

时间复杂度: 分为最优时间复杂度,最坏时间复杂度,平均时间复杂度。

       最优和平均并不能提供保证,反观最坏时间复杂度提供了一定保证,即保证在最坏时间复杂度下,算法一定能完成。因此,我们主要关注算法的最坏情况,一般在说到时间复杂度时,我们说的都是最坏时间复杂度。

时间复杂度的几条基本计算规则: 基本操作,即只有常数项,认为其时间复杂度为O(1)顺序结构,时间复杂度按加法进行计算。比如一个算法复杂度为O(n)的结构和一个算法复杂度为O(n^2)的结构相加,即O(n^2 + n),简化为O(n^2)循环结构,时间复杂度按乘法进行计算,比如外层循环为进行n次,内层为从0加到100,那么内层的时间复杂度为O(100),外层要进行n次,则总体的时间复杂度为O(100n),简化为O(n)。分支结构,时间复杂度取最大值(之后会讲到) 常见时间复杂度

O(1) < O(logn) < O(n) < O(nlogn) < O(n^2) < O(n^3) < O(2^n) < O(n!) < O(n^n)

口诀:常 对 幂 指 阶

 主定理

在时间复杂度里有一种很复杂的计算,即递归计算。因为在求当前层的复杂度时,往往需要将下一层、下下一层的复杂度求解出来。为了能够快速计算递归算法的时间复杂度,可以使用主定理。

T(N) = aT(\frac{N}{b}) + O(n^{d})

其中

T(n): 代表当前层的时间复杂度。代表了将当前层的数据进行分解和将返回当前层的数据进行合并所需要的时间复杂度。(全部计算)

N:问题规模大小

a:递归中子递归的个数

N/b:每一部分子递归的数据规模

d:除子递归外的剩余操作步数(比如:调用!或其它运算,其中涉及函数。)

O(N^d):将原问题分解成子问题和将子问题的解合并成原问题的解的时间

 使用魔法的方法:

 简单看一下第一层和第二层,比较下这两层的工作量,如果每层工作量是一样(如上图),则对应公比为1的情况,直接n^{d}logb^{n}

 如果每层第一层工作量比第二层多(如上图),对应公比大于1的情况,直接n^{logb^{a}}

 如果第一层工作比第二层少,对应于公比小于1的情况,直接n^{d}



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭