时间复杂度的概念和计算方法

1. 概述

同一问题可用不同算法解决,而一个算法的质量优劣将影响到算法乃至程程序的效率。算法分析的目的在于选择合适算法和改进算法,算法分析的方法就是预估其时间复杂度空间复杂度

然而一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才知道。但我们都知道一个算法花费的时间与算法中语句的执行次数成正比,哪个算法中语句执行次数多,它花费时间相对就多。时间复杂度正是利用这个原理来划分等级的。

相关文章链接:

计算机复杂度:http://baike.baidu.com/view/669052.htm

时间复杂度:http://baike.baidu.com/view/104946.htm

2.时间复杂度-------计算方法

以下是网上看到的总结得比较精炼的文章:

求解算法的时间复杂度的具体步骤是:

  ⑴ 找出算法中的基本语句

  算法中执行次数最多的那条语句就是基本语句,通常是最内层循环的循环体。

  ⑵ 计算基本语句的执行次数的数量级

  只需计算基本语句执行次数的数量级,这就意味着只要保证基本语句执行次数的函数中的最高次幂正确即可,可以忽略所有低次幂和最高次幂的系数。这样能够简化算法分析,并且使注意力集中在最重要的一点上:增长率。

  ⑶ 用大Ο记号表示算法的时间性能。

  将基本语句执行次数的数量级放入大Ο记号中。

  如果算法中包含嵌套的循环,则基本语句通常是最内层的循环体,如果算法中包含并列的循环,则将并列循环的时间复杂度相加。例如:

  for (i=1; i<=n; i++)
  x++;

  for (i=1; i<=n; i++)
  for (j=1; j<=n; j++)
  x++;

  第一个for循环的时间复杂度为Ο(n),第二个for循环的时间复杂度为Ο(n2),则整个算法的时间复杂度为Ο(n+n2)=Ο(n2)。

  常见的算法时间复杂度由小到大依次为

  Ο(1)<Ο(log2n)<Ο(n)<Ο(nlog2n)<Ο(n2)<Ο(n3)<…<Ο(2n)<Ο(n!)

Ο(1)表示基本语句的执行次数是一个常数,一般来说,只要算法中不存在循环语句,其时间复杂度就是常数阶Ο(1)。对数阶Ο(log2n)、线性阶Ο(n)、线性对数阶Ο(nlog2n)、平方阶Ο(n2)和立方阶Ο(n3)称为多项式时间,而指数阶Ο(2n)和Ο(n!)称为指数时间。计算机科学家普遍认为前者是有效算法,把这类问题称为P类问题,而把后者称为NP问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
概念是知识表示的基本认知单元,它由外延和内涵两部分构成 . 由于概念的外延与内涵可以相互诱导,所以概念的外延和内涵中一旦有一个被确定下来,那么这个概念也就随之确定 . 概念认知是将属于这一概念的特征属性筛选出来,同时把不属于这一概念的特征属性排除,即通过确定内涵的方式获得概念,它采用特定的认知方法来完成概念的识别 . 当前,概念认知正逐渐借鉴认知科学领域中的一些研究思想,不断地完善自身理论与方法 . 然而,现有的概念认知方法要求假定概念认知算子具有完全认知功能,但现实中由于个体认知的局限性往往会出现认知不完全的现象,在此情况下要对概念进行全面认知则需漫长等待,这意味着在时限约束条件下可能无法及时获取足够的概念信息 . 在认知科学领域,一般采取问题分解求解的策略解决此类问题,即根据当前的局部有限信息做出相应的快速决策,为阶段性认知提供有效的及时参考,是渐进式思维的一种认知模式 . 受此启发,本文提出概念的渐进式认知理论与方法,以处理不完全认知条件下的概念获取问题.具体地,提出概念渐进式认知的认知机理,其功能主要包括概念信息的增删改操作,以模拟一般的认知过程;针对线索为对象集、属性集以及对象集和属性集的三种不同情况,分别给出概念渐进式认知算法,并对它们的时间复杂度和空间复杂度进行分析.特别地,为.了实现近似概念认知,设计乐观悲观两种信息融合策略,使得对于任意对象集和属性集为线索的概念认知至少获得一个上界概念.最后,数值实验表明概念渐进式认知算法的有效性.

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值