2022_07_24__106期__复杂度讲解

数据结构和算法

 数据结构就是内存中管理数据:增删查改

而数据库实在磁盘中管理数据:增删查改

算法最简单的例子就是排序

数据结构和算法是相辅相成的。

复杂度分为时间复杂度和空间复杂度。

1:如何衡量一个算法的好坏。

可以从时间维度和空间维度进行分析:

现在的算法更加关注时间效率。

算法的时间复杂度是一个函数,他定量描述了该算法的运行时间:通过计算算法中的基本操作的执行次数。

我们举一个例子,假如我们需要100w个算法的基本操作

冒泡排序的时间复杂度为O(N^2)

快排的时间复杂度为O(logN)

我们使用哪个排序更好呢?

假如我们使用冒泡排序的话

100w*100w的结果为1万亿我们需要计算1万亿次

而假如我们使用快排的话

log100w的结果大概是20,我们只需要计算20次。

所以我们选择快排更好。

我们再举一个例子

 count语句一共计算了多少次,N^2+2N+10

当N=10时,对应的结果为130

当N=100时,对应的结果为10210

当N=1000时,对应的结果为1002010

我们计算时间复杂度时,我们只需要取一个大概执行次数。我们把表达式影响不大的项都去掉,则对应的结果为

=N^2

总结:我们在计算时间复杂度时,我们只需要计算大概执行次数,这里我们使用大O的渐进表示法。

所以该算法的时间复杂度为O(N^2)

实例

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值