目录:

一:大O记法

二:各函数高阶比较

三:常用算法和数据结构的复杂度速查表

四:常见的logn是怎么来的

一:大O记法

算法复杂度记法有很多种,其中最常用的就是Big O notation(大O记法):

  

对于其中的g(x)是关于操作元素数x为自变量的计算次数函数,而x趋近无穷大从而只留下最高项且忽略其常数项是为了集中看函数随着元素个数的大量增加后运行时间的增加速度从而用来衡量时间复杂度。

e.g:

for i in range(x):

print(‘aha’)

print(i)

print(‘end’)

  则g(x)=2x+1,留下最高项2x,去掉常数项2,最后O(x)=x

  其他同理呐

二:各函数高阶比较

高阶就是函数图在第一象限更接近y轴的函数啦,常见的如下:

  O(1) < O(log n) < O(n) < O(n log n) < O(n2) < O(n3) < O(an)

三:常用算法和数据结构的复杂度速查表

  *能fanqiang的仁兄google:big O cheat sheet中的PDF就是,不能的见下图吧:

  

  

四:常见的logn是怎么来的

  由公式:logbn = logan / logab    (*)

   令c = 1/logab

   则(*):logb= c loga,而C可以省去

   故在如二分法等中的中的g(x)=Clog2n可以写成logn

 (即是b=2, a=10)

python 下的数据结构与算法---2:大O符号与常用算法和数据结构的复杂度速查表的更多相关文章

  1. Python|花了一天,为大家整理的一套来自外国大佬的密码速查表

    简单的HTTPS服务器 检查证书信息 输出 生成自签名证书 输出 准备一个签名注册请求 输出 生成无密码的RSA秘钥文件 用一个私钥给文件签名 输出 从签名验证一个文件 输出 通过pem文件做RSA加 ...

  2. 机器学习算法 Python&R 速查表

    sklearn实战-乳腺癌细胞数据挖掘( 博主亲自录制) https://study.163.com/course/introduction.htm?courseId=1005269003&u ...

  3. 这可能是AI、机器学习和大数据领域覆盖最全的一份速查表

    https://mp.weixin.qq.com/s?__biz=MjM5ODE1NDYyMA==&mid=2653390110&idx=1&sn=b3e5d6e946b719 ...

  4. Python系列教程-详细版 | 图文+代码,快速搞定Python编程(附全套速查表)

    作者:韩信子@ShowMeAI 教程地址:http://showmeai.tech/article-detail/python-tutorial 声明:版权所有,转载请联系平台与作者并注明出处 引言 ...

  5. 可能是史上最全的机器学习和Python(包括数学)速查表

    新手学习机器学习很难,就是收集资料也很费劲.所幸Robbie Allen从不同来源收集了目前最全的有关机器学习.Python和相关数学知识的速查表大全.强烈建议收藏! 机器学习有很多方面. 当我开始刷 ...

  6. 分享 - 27 个机器学习、数学、Python 速查表

      转载自:伯乐在线 - iPytLab,原文链接,侵删 机器学习涉及到的方面非常多.当我开始准备复习这些内容的时候,我找到了许多不同的”速查表”, 这些速查表针对某一主题都罗列出了所有我需要知道的知 ...

  7. 机器学习算法 Python & R速查表

  8. 各大浏览器 CSS3 和 HTML5 兼容速查表

    不知不觉中,支持 CSS3 和 HTML5 的浏览器变得越来越多,甚至包括最新版的 IE,当然,所谓支持仅仅是部分支持,因为 CSS3 和 HTML5 的W3C 规范都尚未形成.如果你现在就希望使用 ...

  9. .htaccess下Flags速查表

    Flags是可选参数,当有多个标志同时出现时,彼此间以逗号分隔. 速查表: RewirteRule 标记 含义 描述 R Redirect 发出一个HTTP重定向 F Forbidden 禁止对URL ...

随机推荐

  1. java Byte.toString 方法与String.ValueOf(Byte)效率比较

    int times = 10000000; Byte[] li = new Byte[times]; for (int i = 0; i < times; i++) { li[i] = (byt ...

  2. osg for android (一) 简单几何物体的加载与显示

    1. 首先需要一个OSG for android的环境. (1).NDK 现在Eclipse 对NDK已经相当友好了,已经不需要另外cygwin的参与,具体可以参考 Android NDK开发篇(一) ...

  3. EcStore操作笔记

    1.去掉首页里面代码: <meta http-equiv="content-type" content="text/html; charset=utf-8" ...

  4. php本页面调试报错配置

    ini_set('display_errors', 'On'); ini_set('memory_limit', '64M'); //报错,详细 error_reporting(E_ALL); //不 ...

  5. ECSTORE2.0 去页面底部版权

    ECstore系统在每个页面底部都有版权信息,非常烦人,之前的解决方法是修改系统代码,但是对不懂的php代码人来说是个很困扰的事情. 现在ECStore在版本为2.0.32中进行了代码更新,只需要在c ...

  6. Ubuntu 12.04(32位)下PHP环境的搭建(LAMP)

    Ubuntu 12.04 32位 下默认安装为5.3.10  不是以下图文中的5.4 1.首先打开命令行,切换到root身份,获得最新的软件包 su root sudo apt-get install ...

  7. CSS 3层嵌套居中布局

    <html> <head> <style type="text/css"> .root{ background-color: red; widt ...

  8. Spark运行问题备忘一(网络搜集)

    问题一 ERROR storage.DiskBlockObjectWriter: Uncaught exception -9ca8//shuffle_1_1562_27 java.io.FileNot ...

  9. java eclipse 连接数据库全过程

    1.需要下载一个jar包.地址 http://pan.baidu.com/s/1i50LRId 2.代码如下: import java.sql.*; public class Mytest { pub ...

  10. php处理字符串格式的计算公式

    有时候我们对每一种产品都有一个提成公式,而这个计算提成的公式是以字符串格式存在表中的 当我们用这个计算公式时,他并不像我们写的:$a=2+3*5;这样简单的能计算出结果,而它是个字符串 所以,我们就必 ...