浅谈算法时间复杂度

转自:微点阅读(www.weidianyuedu.com)微点阅读 - 范文大全 - 免费学习知识的网站

简单聊聊算法复杂度这个概念,算法复杂度包含时间复杂度和空间复杂度二个方面。

时间复杂度:评估执行程序所需的时间。可以估算出程序对处理器的使用程度。空间复杂度:评估执行程序所需的存储空间。可以估算出程序对计算机内存的使用程度。

因为时间复杂度要比空间复杂度更容易产生问题也更有优化的价值,一般说来,不特别说明,复杂度就是指时间复杂度。

时间复杂度及其标示法

一般说来,一个算法要执行所耗费的时间,你不去机器上运行一下,是不可知的,即使你去机器上运行,每次执行所耗费的时间也应该是不一样的。但是我们怎么知道那个算法耗费的时间多那个耗费的时间少呢?这个就要看你设计的算法运行一次所执行的关键语句次数的多少了,如果你的算法执行的关键语句次数多,那么算法花费的整体时间就多,相反时间就少。我们把关键语句执行次数【也叫问题规模】记做n,则算法总运行时间可以记做T(n)。计算机中我们经常用O(n)来标示时间的复杂度,其中n为问题规模。

几种常见的时间复杂度及示例

需要说明的是,根据输入数据的不同,一般会有最好时间复杂度,最坏时间复杂度和平均时间复杂度。我们设计算法时不能指望输入数据每次都是最优的,因此,考虑到输入数据的随机性,我们一般ca

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值