认识时间复杂度、空间复杂度

时间复杂度

(一)常数时间的操作

一个操作如果和数据量没有关系,每次都是固定时间内完成的操作,这叫常数操作,如加减乘数,数组的寻址操作时间复杂度作为一个算法流程中,常数操作数量的指标。常用O(读作big O)来表示。具体来说,在常数操作数量的表达式中,只要高阶项,不要低阶项,也不要高阶项的系数,剩下的部分如果记为f(N),那么时间复杂度为O(f(N))。
评价一个算法流程的好坏,先看时间复杂度的指标,然后再分析不同数据样本下的实际运行时间,也就是**“常数项时间”**。

(二)常见算法时间复杂度

选择排序:
估算出的常数时间的操作取最高次幂作为时间复杂度

查看:N + N-1 + N -2 + N-3… 对比:N + N-1 + N-2 + N-3… swap:N此

如:a*n2 + bn + c ;当n无限大其实最后影响程序好坏快慢的主要是n2决定的;所以最后估算选择排序时间复杂度为:O(n2)

空间复杂度

执行程序需要在原来数据额外创建空间的大小,和时间复杂度相似,O(*)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值