算法时间复杂度 蔚落 2021-06-24 15:57 422阅读 0赞 时间复杂度就是通常我们简称的复杂度,O(f(n))表示。 常见的算法时间复杂度由小到大依次为: ## Ο(1)<Ο(log2n)<Ο(n)<Ο(nlog2n)<Ο(n\*2)<Ο(n\*3)<…<Ο(2\*n)<Ο(n!) ## 举例说明: **O(1)** 哈希表就是一个很好的实例,正常程序在存储数据的时候,将数据一条一条的存到表中,而在查询某条数据的时候,要对这种表轮询,就是一条一条的比较。而哈希表是这样的,在要存储一条数据的时候,首先是把这个数据根据自己的一套哈希算法来计算,得到一个存储地址,然后存入这个地址对应的位置,所以,当哈希表要查数据的时候,它是直接用哈希算法计算要查询的数据,得到一个存储地址,直接去这个存储地址取出数据就可以了,完全不用去轮询,所以他们所消耗的时间就特别明显了。 **Ο(log2n)** i=1 while i < n: i = i * 2 **Ο(n)** s = 0 for i in n: s += i **Ο(n\*2)** s = 0 for i in n: for j in n: s += i **Ο(n\*3)** s = 0 for i in n: for j in n: for m in n: s += i
还没有评论,来说两句吧...