分类目录归档:算法

什么是算法的时间复杂的和空间复杂度


为什么要知道时间复杂度和空间复杂度

我们学习算法的目的,就是为了解决程序的效率和内存的占用问题。如何让程序运行的更快,更省内存便是学习数据结构和算法的目的了。 那么,这里的“快”就是我们这里的时间复杂度,省内存便是空间复杂度。 只要学会了复杂度的分析,也就掌握了算法学习的精髓。

时间复杂度该如何分析呢?

时间复杂度就是我们算法中常说的大O(英文字母)。它表示的是代码或者算法的执行效率,粗略的说就是代码的执行时间,但实际上又不是一个具体的时间。 那么,该如何通过肉眼得到一段代码的执行时间呢? 让我们一起来估算一下下面这段代码的执行时间:

def func(n):
    sum = 0
    

Read more