在描述算法复杂度时,经常用到o(1), o(n), o(logn), o(nlogn)来表示对应算法的时间复杂度, 这里进行归纳一下它们代表的含义:

O(1) 表示一次操作即可直接取得目标元素(比如字典或哈希表)

O(n) 意味着先要检查 n 个元素来搜索目标,数据量增大几倍,耗时也增大几倍。比如常见的遍历算法。

O(n^2) 就代表数据量增大n倍时,耗时增大n的平方倍,这是比线性更高的时间复杂度。比如冒泡排序,就是典型的O(n^2)的算法,对n个数排序,需要扫描n×n次。

O(logn) 当数据增大n倍时,耗时增大logn倍(这里的log是以2为底的,比如,当数据增大256倍时,耗时只增大8倍,是比线性还要低的时间复杂度)。二分查找就是O(logn)的算法,每找一次排除一半的可能,256个数据中查找只要找8次就可以找到目标。最好情况下二分搜索的时间复杂度是 O(1),最坏情况(平均情况)下 O(log n)

O(nlogn)同理,就是n乘以logn,当数据增大256倍时,耗时增大256*8=2048倍。这个复杂度高于线性低于平方。归并排序就是O(nlogn)的时间复杂度。

搬运各类函数图像,越靠近x轴时间复杂度越好:


各类常见时间复杂度复习「o(1), o(n), O(n^2), o(logn), o(nlogn)」相关推荐

  1. 数据结构与算法--9.常见时间复杂度及其之间的关系

    文章目录 1.常见时间复杂度 2.常见时间复杂度之间的关系 1.常见时间复杂度 2.常见时间复杂度之间的关系

  2. 数据结构与算法-常见时间复杂度

    参考链接: 算法的时间复杂度和空间复杂度 - 简书 https://www.jianshu.com/p/88a1c8ed6254 常见时间复杂度 时间复杂度曲线 关于log > 如果a^b=c, ...

  3. 常见时间复杂度及对应关系

    常见时间复杂度 执行次数函数举例 阶 非正式术语 12 O(1) 常数阶 2n+3 O(n) 线性阶 3n2+2n+1 O(n2) 平方阶 5log2n+20 O(logn) 对数阶 2n+3nlog ...

  4. 常见时间复杂度耗费时间从小到大是?

    常见时间复杂度耗费时间从小到大是: O(1)<O(logn)<O(n)<O(nlogn)<O(n的2次方) <O(n的3次方)<O(2的n次方) <O(n的阶 ...

  5. 计算机领域一般面试是会问到的各类常见算法的Big-O复杂度

    原文摘自 http://bigocheatsheet.com/ 本文覆盖计算机领域一般面试是会问到的各类常见算法的Big-O复杂度. Hi there!  This webpage covers th ...

  6. 时间复杂度解析 根据算法换算时间复杂度 常见时间复杂度及其之间的关系

    一.引入 先看一道题,如果 a+b+c=1000,且 a2+b2=c^2(a,b,c 为自然数),如何求出所有a.b.c可能的组合? 二.两种解答方式 算法是独立存在的一种解决问题的方法和思想. 第一 ...

  7. 时间复杂度与O(1), O(n), O(logn), O(nlogn) 的区别

    在描述算法复杂度时,经常用到O ( 1 ) , O ( n ) , O ( l o g n ) , O ( n l o g n ) O(1), O(n), O(logn), O(nlogn)O(1), ...

  8. 时间复杂度 O(1),O(n),O(n^2),O(logn),O(nlogn) 详解

    在描述算法复杂度时,经常用到O(1), O(n),O(n^2), O(logn), O(nlogn)来表示对应算法的时间复杂度, 下面解释下他们的含义: 这是算法的时空复杂度的表示.不仅仅用于表示时间 ...

  9. 时间复杂度O(1),O(n),O(logn),O(nlogn)的意思

    由于平时接触算法比较少,今天看资料看到了o(1),都不知道是什么意思,百度之后才知道是什么意思. 描述算法复杂度时,常用o(1), o(n), o(logn), o(nlogn)表示对应算法的时间复杂 ...

  10. 时间复杂度,O(1), O(n), O(logn), O(nlogn) 的区别+样例分析

    在描述算法复杂度时,经常用到O(1),O(n),O(logn),O(nlogn)O(1), O(n), O(logn), O(nlogn)O(1),O(n),O(logn),O(nlogn)来表示对应 ...

最新文章

  1. PHP安装wamp设置虚拟目录后,无法访问localhost问题
  2. 这就是多媒体开发 视频竟然比连续图片更省带宽
  3. java性能监视_Java 9和应用程序性能监视的激动人心之处
  4. python连接oracle的几种方式
  5. 偷窥微信原创保护规则,优先体验付费阅读系统功能
  6. ActiveMQ下载与安装(Linux环境下进行)
  7. TCP 拥塞控制算法
  8. 【车牌识别】基于matlab GUI模板匹配车牌识别门禁系统【含Matlab源码 1091期】
  9. unity透明通道加颜色_Unity的Gamma颜色空间和Linear颜色空间的小研究
  10. vh和vw是什么单位?
  11. 微软关闭Win7所有服务器,微软公布Win7彻底退役时间 将于2020年终止所有支持
  12. 《数学之美与浪潮之巅》读后感
  13. 各式各样的计算机教学设计,7. 各式各样的椅子教案设计(一等奖)
  14. 某程序员发现 CSDN官方“漏洞”,立省¥10000+,抓紧薅吧
  15. JS:打字游戏_键盘事件监听
  16. matlab学习-结构体变量
  17. android 蒙层动画,Android酷炫加载进度动画
  18. flex 垂直方向 两端对齐
  19. runtime-compiler和runtime-only的区别
  20. P4098 [HEOI2013]ALO

热门文章

  1. 考研题目 第五章 数组和广义表
  2. WIN10系统蓝屏解决方法
  3. stm32 USB HID多点触摸屏上报安卓触摸信号
  4. 计算机过热保护,CPU过热 保护电脑关机的解决办法有哪些
  5. CS5211:DP/eDP to 2Port LVDS
  6. 免费ftp空间的文件传输
  7. 自建魔兽世界sf服务器,魔兽世界80自己搭服务器,热度却持续不到一天,全部用命令!...
  8. 东南大学女孩子学计算机的多吗,2019年应届南邮上岸东南大学计算机生,经验分享,希望能帮助到迷茫的你...
  9. 零基础入门网络,静态LACP链路捆绑详解,带宽扩容,链路冗余备份
  10. VMware安装最新版CentOS7图文教程