2024-09-01
课程学习
00

https://www.bilibili.com/video/av49361421?p=7

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

谈谈有穷性

在这里插入图片描述

def hailstone(n): length = 1 Hailstone = [] Hailstone.append(n) while (1 < n): if (n % 2 == 1): n = (int)(3 * n + 1) Hailstone.append(n) else: n = (int)(n / 2) length += 1 Hailstone.append(n) return length, Hailstone print(hailstone(7)) print(hailstone(27))

output

在这里插入图片描述

在这里插入图片描述

其他学科探讨这个算法有穷性问题。(具体数学,专门探究各种算法背后的数学原理的)

我们这门课要研究的是,在正确性、确定性、可行性、有穷性已知的情况下,如何优化算法和数据结构,达到一个更好的计算过程。

什么才是好算法?

在这里插入图片描述

已知有:

在这里插入图片描述

如何度量数据结构和算法的好坏?

在这里插入图片描述

在这里插入图片描述

DSA

在这里插入图片描述

主要考虑时间成本,因为内存条不值钱,算法瓶颈往往卡在时间。

在这里插入图片描述

如何定义计算成本?

在这里插入图片描述

定义计算成本的时候,需要客观,理想化出一个模型出来,评价算法。

在这里插入图片描述

图灵机(抽象模型,为了度量算法复杂度)

在这里插入图片描述

如何用图灵机实现非负整数加一

最后复位,是为了规范化。

在这里插入图片描述

抽象模型,(抽象模型,为了度量算法复杂度)

在这里插入图片描述

在这里插入图片描述

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Dong

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!