vlambda博客
学习文章列表

整理一下,常用算法复杂度速查表


整理: https://liam.page/2016/06/20/big-O-cheat-sheet/

前 言

复杂度通常会使用大 -O记号来表示,比如快速排序的平均时间复杂度是 O(nlog(n))。虽然我们应该做「理解派」,但是即使每个算法/数据结构都理解了,不时仍有可能忘记具体某个算法/数据结构的复杂度(特别是在最好、最坏和平均情形下的复杂度)。

因此制作一个 「速查表」 来集中总结是非常有必要的!这样考前、面试前,即使蹲坑的功夫都能背上个几遍,这样记得就更牢固了。

动手前先看看是否已经有轮子是一个好习惯,果不其然,找到了原作。

http://bigocheatsheet.com/


图 例


整理一下,常用算法复杂度速查表



抽象数据结构复杂度


整理一下,常用算法复杂度速查表



排序算法


整理一下,常用算法复杂度速查表



图操作


整理一下,常用算法复杂度速查表



堆操作


整理一下,常用算法复杂度速查表



大O复杂度曲线

最后

欢迎关注「前端瓶子君」,回复「交流」加入前端交流群!
欢迎关注「前端瓶子君」,回复「算法」自动加入,从0到1构建完整的数据结构与算法体系!
在这里,瓶子君不仅介绍算法,还将算法与前端各个领域进行结合,包括浏览器、HTTP、V8、React、Vue源码等。
在这里(算法群),你可以每天学习一道大厂算法编程题(阿里、腾讯、百度、字节等等)或 leetcode,瓶子君都会在第二天解答哟!
另外,每周还有手写源码题,瓶子君也会解答哟!
“在看和转发” 就是最大的支持