• Chapter4 复杂度分析(下):浅析最好,最坏,平均,均摊时间复杂度


    四个复杂度分析:

    1:最好情况时间复杂度(best case time complexity)

    2:最坏情况时间复杂度(worst case time complexity)

    3:平均情况时间复杂度(average case time complexity)

    4:均摊时间复杂度(amortized time complexity)

    for (; i < n; ++i)

    {

    if (array[i] == x)

    {

    pos = i;

    break;

      }

      }

    分析:1:最好情况时间复杂度:O(1)

      2:最坏情况时间复杂度:O(n),因此在不同的情况下,这段代码的时间复杂度是不一样的,所以引入三个概念:最好,最坏,平均情况复杂度。

    3:平均情况复杂度:

    I:要查找的变数X在数组中的位置有n+1种情况:在数组的0~n-1位置中和不在数组中,我们把每种情况下,查找需要遍历的次数累加起来,然后除以n+1,就可以得到需要遍历的元素个数的平均值,即:

    (1+2+3+……+n+n)/(n+1)=n(n+3)/2(n+1)

    得到平均时间复杂度就是O(n)

      II:概率分析法

    4:均摊时间复杂度(摊换分析,平摊分析)

  • 相关阅读:
    Jmeter断言设置
    jmeter设置自动启动时间
    jmeter用命令行运行jmx脚本
    jmeter多用户并发压力测试(导入文件)
    Fiddler导出接口抓包数据
    postman和postwoman
    UVa10561
    UVa11859
    Ferguson游戏
    UVa11916
  • 原文地址:https://www.cnblogs.com/zhaohu/p/9974989.html
Copyright © 2020-2023  润新知