时间、空间复杂度分析

本文探讨了算法分析中的核心概念——渐进时间复杂度和渐进空间复杂度。时间复杂度通过比较不同算法中基本操作执行次数的数量级来评估效率,常以O符号表示。基本语句的频度在最坏情况下决定时间复杂度,面试中提到的时间复杂度通常指一般情况。空间复杂度则衡量算法运行时所需存储空间,记作S(n)=O(f(n)),包括算法本身、输入/输出、指令、常数和变量等占用的空间。
摘要由CSDN通过智能技术生成

1 渐进时间复杂度

算法运行时间=\sum每条语句的执行次数*该语句执行一次所需要的时间

每条语句的执行次数又称为语句频度

        每条语句执行一次所需的时间,一般是随机器而异的。取决于机器的指令性能、速度以及编译的代码质量。是由机器本身软硬件决定的,它与算法无关。

可假设执行每条语句所需的时间均为单位时间。

讨论语句频度

 我们把算法所耗费的使劲按定义为该算法中每条语句的频度之和。

为了便于比较不用算法的时间效率,我们仅比较他们的数量级

例如:两个不同的算法,时间消耗分别是:T_{1}(n)=10n^{2}T_{2}(n)=5n^{3}

 若有某个辅助函数f(n),使得当n趋近于无穷大时,T(n)/f(n)的极限值为不等于零的常数,则称f(n)是T(n)的同数量级函数。记作T(n)=O(f(n)),称O(f(n))为

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值