前言
初学算法与数据结构
提示:以下是本篇文章正文内容,下面案例可供参考
一、算法效率是什么?
算法效率包含时间效率和空间效率,时间效率简称时间复杂度,空间效率
简称空间复杂度。
二、时间复杂度是什么?
一言以蔽之,程序的执行次数为算法的时间复杂度。并且有以下情况出现:
下面我们举个例子:选择排序
最好情况就是已经是有序数组,不用动。最坏情况就要进行计算。
上面这是伪代码演示
当n趋于无穷时,T(n)趋于n平方。此时我们用O(n^2)来表示选择排序的时间复杂度。O为渐进上界(最坏情况)符号,渐进紧确界(一般情况)为θ,渐进下届(最坏情况)为Ω。因为渐进上届更具一般性,所以时间复杂度通常就是指用O表示,常数的时间复杂度为O(1)。
三.力扣例题讲解
1.消失的数字
乍一看首先能想到的方法有遍历求和再相减,排序查找等等,但时间复杂度都不符合O(n),O(n)这里我们就得想其他办法。
这道题用到了按位异或的方法
对这种方法的解读如下:
总结
这是我的第一篇博客,如有错误或不足之处及时提出。