中国大学MOOC:一般而言,算法设计完成后,需要进行算法的模拟与分析。关于算法的模拟与分析回答问题:分析下列算法的时间复杂性。StartoftheAlgorithm(1)S[1]=1;Sum=0;初始化距离数组D[n][n];/*I层的循环,即下列步骤为每次找出一个城市,I从2到n,即从找出第2个城市一直到找出第n个城市(2)I=2;/*K层的循环,即下列步骤为从所有未访问过的城市中查找距离S[I-1]最近的城市j,K依然从2到n寻找(3)K=2;(4)将Dtemp设为一个大数(比所有两个城市之间的距离都大)/*L层的循环,即下列步骤为判断一个城市是否已被访问过,如果已被访问,则跳过该城市,寻找新的城市,L从1到I-1,因为已经有I-1个城市被访问过。(5)L=1;(6)如果S[L]==K,转步骤(10);(7)L=L+1;(8)如果L<I,转步骤(6);/*L层的循环结束(9)如果D[K,S[I-1]]<Dtemp,j=K,Dtemp=D[K,S[I-1]];(10)K=K+1;(11)如果K<=N,转步骤(5)。/*K层的循环结束(12)S[I]=j;(13)Sum=Sum+Dtemp;(14)I=I+1;(15)如果I<=N,转步骤(3),否则,转步骤(16);/*I层的循环结束(16)Sum=Sum+D[1,j];(17)逐个输出S[N]中的全部元素;(18)输出Sum。EndoftheAlgorithm该算法的时间复杂性表达正确的是_________。
中国大学MOOC:一般而言,算法设计完成后,需要进行算法的模拟与分析。关于算法的模拟与分析回答问题:分析下列算法的时间复杂性。StartoftheAlgorithm(1)S[1]=1;Sum=0;初始化距离数组D[n][n];/*I层的循环,即下列步骤为每次找出一个城市,I从2到n,即从找出第2个城市一直到找出第n个城市(2)I=2;/*K层的循环,即下列步骤为从所有未访问过的城市中查找距离S[I-1]最近的城市j,K依然从2到n寻找(3)K=2;(4)将Dtemp设为一个大数(比所有两个城市之间的距离都大)/*L层的循环,即下列步骤为判断一个城市是否已被访问过,如果已被访问,则跳过该城市,寻找新的城市,L从1到I-1,因为已经有I-1个城市被访问过。(5)L=1;(6)如果S[L]==K,转步骤(10);(7)L=L+1;(8)如果L<I,转步骤(6);/*L层的循环结束(9)如果D[K,S[I-1]]<Dtemp,j=K,Dtemp=D[K,S[I-1]];(10)K=K+1;(11)如果K<=N,转步骤(5)。/*K层的循环结束(12)S[I]=j;(13)Sum=Sum+Dtemp;(14)I=I+1;(15)如果I<=N,转步骤(3),否则,转步骤(16);/*I层的循环结束(16)Sum=Sum+D[1,j];(17)逐个输出S[N]中的全部元素;(18)输出Sum。EndoftheAlgorithm该算法的时间复杂性表达正确的是_________。
1