首页 > 其他分享 >什么是时间复杂度?

什么是时间复杂度?

时间:2023-04-16 22:33:36浏览次数:38  
标签:console log ++ 复杂度 let 时间 什么

原文点此跳转

什么是时间复杂度?

定性描述该算法的运行时间,一个函数、用大 O 表示,例如 O (1)、 O (n)、O (logN) ...

常见的时间复杂度量级

  • 常数阶 O (1)
  • 对数阶 O (logN)
  • 线性阶 O (n)
  • 线性对数阶 O (nlogN)
  • 平方阶 O (n²)
  • 立方阶 O (n )
  • K 次方阶 O (n ^ k)
  • 指数阶 (2 ^ n)

上面从上至下依次的时间复杂度越来越大,执行的效率越来越低。

坐标图如下

什么是时间复杂度?_时间复杂度


基础案例

O(1)

当每次该文件执行的时候,以下代码永远只会执行一次。

let i = 0

i += 1


O(n)

这是一个循环语句,循环体内的代码会执行 n 次。

for (let i = 0; i < n; i++) {
    console.log(i)
}


O(1) + O(n) = O(n)

当两个时间复杂度的代码在一块时,以时间复杂度较大的为准,当 n 足够大的时候,1 可以忽略不计。

let i = 0

i += 1

for (let i = 0; i < n; i++) {
    console.log(i)
}


O(n) * O(n) = O(n ^ 2)

当遇到嵌套 for 循环时,两个时间复杂进行相乘,得到的结果就是真实的时间复杂度。当时间复杂度进行相加时,却可以忽略不计。

for (let i = 0; i < n; i++) {
    for (let j = 0; j < n; j++) {
        console.log(i, j)
    }
}


O(logN)

log 一般都是以 2 为底,可以不写。log 称为对数,一般是求 2 的多少次方为 n 。

let i = 1

while (i < n) {
    console.log(i)
    i *= 2
}

原文点此跳转


标签:console,log,++,复杂度,let,时间,什么
From: https://blog.51cto.com/u_12639291/6193835

相关文章

  • m无线传感器网络WSN的时间同步捕获算法matlab仿真,对比单步捕获法,双步捕获法以及锯齿
    1.算法仿真效果matlab2022a仿真结果如下:       2.算法涉及理论知识概要2.1WSN同步概要       由于,信息传输和计算会消耗大量的能量,无线传感器网络中的节点都是由电池供电,能源有限,让节点长时间持续时间同步过程以达到极高精确度的时钟同步将导致极大......
  • 到底什么样的图形交易才能赚钱呢?
    断头铡刀看图形,慢慢上涨,突然一根大阴线下来,就有下跌趋势了,后面止损可以放在大阴线的高点!【注】:一定要有止损,而且要顺应大趋势!小周期先于大周期启动,大周期稳定!......
  • 半导体企业ERP系统是什么?能为半导体企业实际解决哪些问题?
    一、什么是半导体企业ERP系统?1、半导体企业ERP系统是一种企业资源规划(ERP)系统,它是专门为半导体企业开发的,可以帮助企业在生产管理中实现集成化、自动化和数据化。2、该系统可以涵盖企业的各个方面,包括销售、采购、库存、生产计划、生产执行、品质管理等。3、通过半导体......
  • 【C#】Whisper 离线语音识别(微软晓晓语音合成的音频)(带时间戳、srt字幕)...
    https://blog.csdn.net/cxyhjl/article/details/129905927 用微软语音合成功能生成xiaoxiao的语音。用Whisper离线识别合成的语音输出srt字幕。一、语音合成参考这个网址:https://www.bilibili.com/read/cv19064633 合成的音频:晓晓朗读-温柔二、Whisper语音识别下载模......
  • 23-4-16--时间转换--老板的作息表
     新浪微博上有人发了某老板的作息时间表,表示其每天4:30就起床了。但立刻有眼尖的网友问:这时间表不完整啊,早上九点到下午一点干啥了?本题就请你编写程序,检查任意一张时间表,找出其中没写出来的时间段。输入格式:输入第一行给出一个正整数 N,为作息表上列出的时间段的个数。随......
  • 第一篇——为什么要学编写通达信指标公式(从零起步编写通达信指标公式系列)
    技术指标简单来说就是用运用一些计算公式对行情数据进行处理,得到计算结果,根据这些结果,可以成绘制图形,用来辅助行情判断。比如常见的MA均线指标、MACD指标、KDJ指标等。技术指标也可以改编成选股指标,从市场中的几千只股票中粗选出符合自己要求的股票,然后再进行人工分析,减少工作量......
  • 内容为字典的列表按其中一个字段排序并把时间改成几天前列表十个分一份
    #-*-coding:utf-8-*-#@Time:2023/04/16001614:02#@Author:张鑫#@File:prac#@Project:PyCharm2022.1.4importdatetimeimportjsonimporttimefromoperatorimportitemgetter'''题目要求三个列表,列表长度为10,列表内容格式为字典,字典包含字段,按标题去重,按时间......
  • 每隔几年回顾自己做过的项目,能知道自己擅长什么、不擅长什么
    一样米养百样人,人人皆有不同,不是流水线上毫无差别的产品。人有差异,必有长短。所谓长短,即人擅长干什么,不擅长干什么。有人适合作领导,有人适合交际,有人适合钻研。这是人从小的环境和性格决定的,最好顺从,强扭不一定好使。英语我也学了很多年了,考试成绩都不赖,就是一遇到口语就打怵,究其原......
  • 什么是人工智能领域提问问题的耦合度?
    人工智能领域中,提问问题的耦合度(Coupling)通常指问题与数据之间的联系程度,即问题对数据的依赖程度。具体来说,问题的耦合度越高,说明问题需要更多的信息和背景知识才能得到正确的答案;反之,耦合度越低,问题所需的信息和背景知识越少,答案也更容易得到。例如,对于以下两个问题:(1)计算机......
  • 扎实打牢数据结构算法根基,从此不怕算法面试系列之001 week01 02-01 什么是算法?
    1、什么是算法?为了明确什么是算法,我们会从简单的查找功能开始讲起。查找其实一个一个非常简单的算法,但我们会为这个查找功能的算法做如下工作:让查找的功能适应更多的数据类型通过查找的例子讲解如何编写正确的程序?为查找算法性能测试对一些常见算法做复杂度分析2、定义......