算法复杂度解释

e64e5538590e5a99cec4328f900bea66.png

算法是一个封装完备的指令序列,用于执行特定的功能。

换句话说,算法就是由人或机器可重复的解决问题的方法。计算机科学家们使用算法的复杂度(又称大 O 表示法)来表示算法的效率。

例如:

1.一道菜谱就是供人使用的算法。2.一种编程中常用的排序算法就是用来描述计算机如何给数据排序的。常用的算法有寻找最优路径算法,例如“旅行商问题”、“树的遍历算法”等。

还有很多机器学习算法例如“线性回归”、“逻辑回归”、“决策树”、“随机森林”、“支持向量机”、“循环神经网络(RNN)”、“长短期记忆(LSTM)神经网络”、“卷积神经网络(CNN)”、“深度卷积神经网络”等。

算法复杂度解释

时间复杂度 Time Complexity

算法的时间复杂度是指算法需要消耗的时间资源。一般来说,电脑算法是问题规模𝑛的函数𝑓(𝑛),算法的时间复杂度也因此记做 :𝑇(𝑛)=𝑂(𝑓(𝑛)) 算法执行时间的增长率与𝑓(𝑛)的增长率正相关,称作渐近时间复杂度,简称时间复杂度。常见的时间复杂度有:常数阶𝑂(1),对数阶𝑂(log⁡𝑛),线性阶𝑂(𝑛),线性对数阶𝑂(𝑛log⁡𝑛),平方阶𝑂(𝑛^2),立方阶𝑂(𝑛^3),…,𝑘次方阶𝑂(𝑛^𝑘),指数阶𝑂(2^𝑛)。随着问题规模𝑛的不断增大,上述时间复杂度不断增大,算法的执行效率越低。

18e6ad516734574d1a21045134a5761d.png

空间复杂度 Space Complexity

算法的空间复杂度是指算法需要消耗的空间资源。其计算和表示方法与时间复杂度类似,一般都用复杂度的渐近性来表示。同时间复杂度相比,空间复杂度的分析要简单得多。

a8c494ef7145d0a2c8ffff444ce1f550.png

60ac2995ea0d4c654b730883300416da.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值