时间复杂度基础知识

算法性能分析主要关注时间复杂度,衡量标准包括问题规模N、语句频度等。常见的时间复杂度有常量阶O(1)、线性阶O(n)和平方阶O(n^2)。算法执行时间受策略、问题规模、编程语言等因素影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

算法性能分析

评价算法的标准:

一般来说,评价一个算法的好坏就是看它的时间和空间,因为空间现在的内存都很大,考虑的比较少,我们主要考虑算法的时间复杂度怎样进行度量。

问题的规模N定义:

问题规模N与该算法在运行时所占的空间S与所耗费的时间T有关。

对不同的问题其含义不同:
对矩阵是阶数;
对多项式运算是多项式项数;
对图是顶点个数;
对集合运算是集合中元素个数。

衡量算法效率的方法:

(1)事后统计法
缺点:1.必须执行程序 2.其他因素掩盖算法本质
(2)事前统计法
我们更倾向于事前统计法。

和算法执行时间有关的因素:

(1)算法选用的策略
(2)问题的规模
(3)编写程序的语言
(4)编译程序产生的机器代码的质量
(5)计算机执行指令的速度

算法执行时间:

一个算法的执行时间大致上等于其所有语句执行时间的总和,对于语句的执行时间是指该条语句的执行次数和执行一次所需时间的乘积。
分析:
算法执行时间并不是程序实际执行的时间,而是算法中所有基本操作语句(原操作)的执行时间

语句频度:语句在一个算法中重复执行的次数。

在这里插入图片描述

算法的时间复杂度

算法的时间复杂度:T(n) = O( f(n) )f(n)就是算法中语句执行的总次数。所以只要我们知道了算法中所有语句

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值