时间复杂度和空间复杂度的计算

  1. 算法效率。

  2. 时间复杂度和空间复杂度的定义。

  3. 如何计算时间和空间复杂度。

   

     1. 算法效率

算法效率分为:时间效率和空间效率。时间效率被称为时间复杂度,而空间效率被称为空间复杂度。时间复杂度的主要衡量是算法的运行时间,空间复杂度的主要衡量是一个算法需要的空间。

因为早期的计算机的存储容量小,所以需要算空间复杂度,但随着时代的变迁,存储容量的增大,对于空间复杂度的要求不再高。

    2.    复杂度的定义

2.1时间复杂度

在计算机中时间复杂度是一个函数,它定量描述算法的运行时间。一个算法所消耗的时间,从理论上来说无法进行计算,只有在计算机上进行运行才能知道。因此,在我们不能上机时也需要计算的时候,因为语句的执行次数与算法所花费时间成正比,就可以根据算法中的基本操作执行次数来计算算法的时间复杂度。

2.2空间复杂度

空间复杂度是对一个算法在运行时临时占用空间大小的量度。空间复杂度不是程序占用了多少bytes的空间,而是计算变量的个数

       3.计算方法

3.1大o的渐进表示法

因为f(n)=n*(n-1)*(n-2)……*1,每次递归都减一最终将n变为0,所以递归了n次,O(N)则为这个程序的时间复杂度。

大o表示法:

1.用1取代运行时间中的所有加法常书

2.在修改后的运行次数函数中,只保留最高阶。

3.最后最高阶存在且不为常数时,全部省去(包括系数),如果F(N)=2N²+2N+10,则时间复杂度为

O(N²)

算法的时间复杂度存在最好,最差,平均的情况。

最差:任意输入规模运行最大次数

平均:任意输入规模期望运行次数

最好:任意输入规模运行最小次数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值