[饲养员刷leetcode]笔记二、基础知识点
二、基础知识点
1.1 时间复杂度
什么是时间复杂度?
算法的执行效率
算法的执行时间与算法输入的值的关系
大O表示法 O(n)
常见的时间复杂度案例分析
常见的时间复杂度对比
1.2 空间 复杂度
什么是空间复杂度
算法存储空间与输入值之间的关系
大O表示法
常见空间复杂度分析
占空间的只有声明的变量
,找变量
当变量 = 常用时,永远是O(1)
空间复杂度为O(1)
例如可能是Array,List等,空间复杂度是O(N)
随着nums越来越多的,空间复杂度也会变化,所以是O(N)
O(N)可能的情况:
①:Array数组的改变,List的改变,总结就是变量,
②:递归,一层一层的改变,会保留在递归栈,会有个O(N)的空间
常用空间复杂度对比
Note:
时间和空间只能二选一
面试时:和面试官讲清楚,有两种方法,A方法时间复杂度低,B方法空间复杂度低,问面试官喜欢哪一种,给他写哪一种
工作时:时间 > 空间