数据结构_知识点_算法基础

推导大O阶方法

  1. 用常数1取代所运行时间中的所有加法常数
  2. 在修改后的运行次数函数中,只保留最高阶项
  3. 如果最高阶存在且不是1,则去除与这个项的系数

例子:


int i,j; for(i = 0; i < n; i++) { for(j = i; j < n; j++) { /*时间复杂度为O(1)的程序步骤序列*/ } }

f(n) = n^2/2 + n/2
只保留最高阶n^2/2,去除最高阶系数
所以O(f(n)) = O(n^2)

常见时间复杂度

<br />


Paste_Image.png

<br />
常用的时间复杂度所耗费的时间从小到大依次是:


Paste_Image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 声明:该文章中内容为《大话数据机构》一书中的内容 1 函数的渐近增长 我们现在来判断一下,两个算法A和B哪个更好。...
    mm_cuckoo阅读 1,367评论 0 13
  • 算法复杂度 时间复杂度 空间复杂度 什么是时间复杂度 算法执行时间需通过依据该算法编制的程序在计算机上运行时所消耗...
    KODIE阅读 3,322评论 0 9
  • 一.算法的定义 算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有序序列,并且每条指令表示一个或多个操作 ...
    e40c669177be阅读 951评论 0 8
  • 任何一个读者要追求的目标-为了消遣,获得资讯或增进理解力-会决定他阅读的方式。至于阅读的效果则取决于他在阅读上花了...
    LittlePiggie阅读 217评论 0 0
  • 偶的一日空闲,背着包穿梭在闹市街头,想着还有什么未完成“小梦想”,按照清单,匆匆奔走实现。 听许嵩唱着……岁月涟漪...
    行走万里等风来阅读 267评论 0 0