我们在学习算法的时候,是肯定需要分析时空和空间的复杂度的,这里我们必须要知道了解的一个知识就是对数——log。
你可能不记得什么是对数了,但是一定知道什么是幂吧。log10100相当于问“将多少个10相乘的结果为100”。答案就是两个。因此,log10100=2。对数运算就是幂运算的逆运算。
举例:
- 102 = 100——log10100 = 2
- 103 = 1000——log101000 = 3
- 23 = 8——log28 = 3
- 24 = 16——log2 = 16
注意: log,它的默认下标在物理上常用e,数学计算中常用10,计算机相关常用2。我们不需要考虑他的下标是多少,因为所有的对数函数的性质都是一样的,只差个倍数而已。只要分析出复杂度是log性质的就OK!复杂度分析通常log表示的有:nlogN、logN等…