`

算法复杂度(转) 挺好的比喻。

阅读更多
算法分析,就是复杂度的问题。

复杂度只算“最要命的”,比如,执行n^2的算法前来个快排根本不拖速度,n^2多的都豁出去了不在乎区区一个nlogn。

书里对复杂度进行了严格的定义,包括O()、o()、Θ()、Ω()四种符号。

简单地说,

O(n^2)就是顶破天了搞个n^2次;

o(n^2)就是天花板不到n^2,比n^2矮一点(比如希尔排序就是o(n^2),因为它再倒霉也达不到n^2);

Ω(n^2)就是说某个算法随便怎么至少都要耗费n^2,比如所有基于比较的排序都是Ω(nlogn);

Θ(n^2)就是说它即是O(n^2)又是Ω(n^2),被天花板和水泥地夹在中间了,动不了了,就是它了。
参考资料:matrix67牛的博客
来自百度知道:http://zhidao.baidu.com/question/35776868.html?fr=ala0
分享到:
评论

相关推荐

    算法复杂度计算方法

    ### 算法复杂度计算方法 #### 一、时间复杂度 时间复杂度是用来评估算法执行速度的一个重要指标,通常用于衡量算法随输入数据规模(通常标记为n)的增长趋势。 ##### 1. 时间频度 - **定义**:算法执行过程中基本...

    算法复杂度分析基础课件

    《算法复杂度分析基础》 算法复杂度分析是评估算法效率的重要工具,主要涉及时间复杂度和空间复杂度两个方面。这门基础课程旨在教授如何分析算法在处理大规模数据时所需的资源,帮助开发者优化程序性能。 一、算法...

    算法复杂度O(mn)的均值滤波

    #### 四、算法复杂度分析 经过优化后,对于每个像素点,只需要执行一次加法和一次减法操作即可完成均值的计算。因此,整个算法的计算复杂度为 O(mn)。相较于传统方法,该算法大大降低了计算量,提高了效率。 #### ...

    大O表示法与算法复杂度分析:深入理解与应用指南

    大O表示法是一种用于描述算法复杂度的数学符号,它可以帮助我们理解和比较不同算法的效率。本文将详细介绍大O表示法的基本概念、分类、以及如何使用它来分析和描述算法的复杂度。 大O表示法是理解和分析算法复杂度的...

    常用排序算法复杂度

    常用排序算法时间复杂度、空间复杂度总结。包括:冒泡排序、快速排序、选择排序、堆排序、插入排序、Shell排序、归并排序、基数排序。

    算法时间复杂度

    根据给定文件的信息,我们可以详细地探讨“算法时间复杂度”的相关知识点。时间复杂度是衡量算法运行时间随输入规模增长而变化的函数,它在计算机科学与编程领域扮演着至关重要的角色。接下来,我们将围绕以下几个...

    探索AI画布背后的奥秘:AI绘画软件算法复杂度解析

    ### 探索 AI 画布背后的奥秘:AI 绘画软件算法复杂度解析 AI绘画,作为一种新兴的艺术创作方式,正逐步改变着我们对视觉艺术的理解与体验。这一技术的发展,离不开深度学习领域的进步,尤其是生成对抗网络(GANs)...

    关于算法时间复杂度的计算

    算法时间复杂度的计算 算法时间复杂度的计算是计算机科学中一个非常重要的概念,它描述了算法执行时间随着输入规模的变化而增长的速度。时间复杂度通常用大 O 记法表示,即 O(f(n)),其中 f(n) 是问题规模 n 的函数...

    内部排序算法复杂度分析

    各种内部排序算法的时间复杂度分析结果只给出了算法执行时间的阶,或大概执行时间。试通过随机的数据比较各算法的关键字比较次数和关键字移动次数,以取得直观感受。

    降低PTS算法复杂度的新方法.pdf

    ### 降低PTS算法复杂度的新方法 #### 摘要 正交频分复用(Orthogonal Frequency Division Multiplexing,OFDM)是一种高效的多载波调制技术,被广泛应用于无线通信系统中。然而,OFDM信号的一个关键问题是较高的峰...

    复杂度计算(matlab)

    4. **算法实现**:以下是对`KC`函数实现过程的详细解析。 #### 代码解析 ##### 函数定义 ```matlab function[complexity]=KC(X) ``` - `X`: 输入的时间序列数据。 - `complexity`: 输出的复杂度值。 ##### 数据...

    算法设计技巧与分析第1章算法基本概念之算法复杂度概要.ppt

    算法设计技巧与分析第1章算法基本概念之算法复杂度概要.ppt

    基于遗传算法的TSP算法.zip_最坏情况下_算法复杂度_遗传算法 _遗传算法np_遗传算法;TSP

    总的来说,遗传算法在解决旅行商问题上展现出了良好的潜力,尽管其在最坏情况下的时间复杂度限制了其在大规模问题上的应用。通过对算法参数的优化和与其他技术的融合,我们可以进一步提升遗传算法在处理这类NP难问题...

    算法 时间复杂度 空间复杂度 经典

    #### 一、算法复杂度概述 在计算机科学领域,算法的时间复杂度与空间复杂度是衡量一个算法效率的重要指标。时间复杂度关注的是算法执行时间的增长速率,而空间复杂度则侧重于算法运行过程中所需内存空间的大小。 #...

    算法复杂度——时间复杂度和空间复杂度.doc

    ### 算法复杂度详解:时间复杂度与空间复杂度 #### 一、时间复杂度 **1. 时间频度** 在讨论算法效率时,我们通常关注算法执行所耗费的时间。理论上直接计算出算法的确切执行时间是不可行的,这需要具体的硬件...

    由数据范围反推算法复杂度以及算法内容

    ### 由数据范围反推算法复杂度及其应用 在计算机科学与编程竞赛中,了解算法的时间复杂度对于选择合适的算法解决特定问题至关重要。通过题目给出的数据规模(即输入数据的大小),我们可以反向推导出适合该问题的...

    数据结构与算法复杂度速查表.zip

    数据结构与算法复杂度速查表是编程领域中非常实用的工具,尤其对于优化代码性能和理解算法效率至关重要。这份资料包含了一个详细的表格,用于快速查看各种常见数据结构(如数组、链表、栈、队列、树、图等)以及算法...

    NOIP初赛复习13排序与算法复杂度.pdf

    ### NOIP初赛复习13排序与算法复杂度 #### 排序概念 排序是一种基本的计算机程序设计操作,主要用于对一组数据元素按照特定规则进行重新排列,使其形成有序序列。这种技术在解决多种问题时都非常有用,比如查找、...

    Python基础入门教程 Python语言编程导论 算法评价 算法复杂度 (共29页).ppt

    Python基础入门教程涵盖了从语言编程导论到实际应用的多个方面,包括了算法评价和复杂度分析,这对于理解编程效率至关重要。 算法评价主要关注以下几个方面: 1. **正确性**:算法首要的任务是确保正确执行,实现...

Global site tag (gtag.js) - Google Analytics