【算法与数据结构】关于代码运行时间复杂度的计算方法

简介: (转载请注明出处:http://blog.csdn.net/buptgshengod) 1.背景知识        大O标记就不用我说了吧。O(n)这种时间复杂度的意义自己google吧。这里简单讲下从代码推算。 2.具体案例  (1)案例一   int a=0; //第一行for(int i=0;i<=N;i++)//第二行

(转载请注明出处:http://blog.csdn.net/buptgshengod

1.背景知识

       大O标记就不用我说了吧。O(n)这种时间复杂度的意义自己google吧。这里简单讲下从代码推算。

2.具体案例

 (1)案例一

  
int a=0;                      //第一行
for(int i=0;i<=N;i++)//第二行
{
  a+=i*i*i;                  //第三行
}
我们来看下。
第一行,声明变量并赋值用一个时间单元;
第二行,首先给i赋值,一个时间单元。i<=N是N+1个时间单元。i++是N个时间单元。第二行总共2N+2个时间单元。
第三行,一个加法,一个赋值,两个乘法,一共四个时间单元。执行N次,一共4N个时间单元。

所以这段代码一共6N+3个时间单元。时间复杂度为O(N);

(2)案例二

   一个for循环
for(int i=0;i<=N;i++)
时间复杂度O(n)

 
  嵌套for循环
for(i=0;i<n;i++)
{
   for(j=0;j<n;j++)
 {}
}
时间复杂度O(n²)


 三层嵌套语句
for(m=0;m<n;m++)
{
    int a=0;
    for(i=0;i<n;i++)
   {
       for(j=0;j<n;j++)
      {}
    }
}
时间复杂度为 O(n³)。

if/else语句
时间复杂度,是if和else中最长的那个。


简单的递归函数如
public static int test(int n)
{
     if(n<=1)
      {
         return 1;
       }
     else
       {
        return n*test(n-1);
       }
}
相当与一个for的循环,时间复杂的是O(n)


目录
相关文章
|
8天前
|
机器学习/深度学习 算法 新能源
【优化调度】基于matlab粒子群算法求解水火电经济调度优化问题研究(Matlab代码实现)
【优化调度】基于matlab粒子群算法求解水火电经济调度优化问题研究(Matlab代码实现)
|
8天前
|
传感器 并行计算 算法
【无人机编队】基于非支配排序遗传算法II NSGA-II高效可行的无人机离线集群仿真研究(Matlab代码实现)
【无人机编队】基于非支配排序遗传算法II NSGA-II高效可行的无人机离线集群仿真研究(Matlab代码实现)
|
8天前
|
存储 算法 安全
【无人机】基于灰狼优化算法的无人机路径规划问题研究(Matlab代码实现)
【无人机】基于灰狼优化算法的无人机路径规划问题研究(Matlab代码实现)
|
8天前
|
机器学习/深度学习 传感器 数据采集
【23年新算法】基于鱼鹰算法OOA-Transformer-BiLSTM多特征分类预测附Matlab代码 (多输入单输出)(Matlab代码实现)
【23年新算法】基于鱼鹰算法OOA-Transformer-BiLSTM多特征分类预测附Matlab代码 (多输入单输出)(Matlab代码实现)
|
8天前
|
机器学习/深度学习 数据采集 算法
【创新无忧】基于白鲨算法WSO优化广义神经网络GRNN电机故障诊断(Matlab代码实现)
【创新无忧】基于白鲨算法WSO优化广义神经网络GRNN电机故障诊断(Matlab代码实现)
|
9天前
|
算法 Java 调度
【车间调度】基于GA、PSO、SA、ACO、TS优化算法的车间调度比较研究(Matlab代码实现)
【车间调度】基于GA、PSO、SA、ACO、TS优化算法的车间调度比较研究(Matlab代码实现)
|
9天前
|
机器学习/深度学习 算法 计算机视觉
【图像去噪】基于进化算法——自组织迁移算法(SOMA)的图像去噪研究(Matlab代码实现)
【图像去噪】基于进化算法——自组织迁移算法(SOMA)的图像去噪研究(Matlab代码实现)
|
9天前
|
机器学习/深度学习 算法 网络性能优化
【EI复现】基于元模型优化算法的主从博弈多虚拟电厂动态定价和能量管理(Matlab代码实现)
【EI复现】基于元模型优化算法的主从博弈多虚拟电厂动态定价和能量管理(Matlab代码实现)
|
10天前
|
人工智能 算法 安全
【博士论文】基于局部中心量度的聚类算法研究(Matlab代码实现)
【博士论文】基于局部中心量度的聚类算法研究(Matlab代码实现)
|
10天前
|
机器学习/深度学习 分布式计算 算法
【升级版本】基于多目标粒子群算法的微电网优化调度【风光、储能、柴油、燃气、电网交互】(Matlab代码实现)
【升级版本】基于多目标粒子群算法的微电网优化调度【风光、储能、柴油、燃气、电网交互】(Matlab代码实现)

热门文章

最新文章