某个算法的时间复杂度递归式T(n)=T(n-1)+n,其中n为问题的规模,则该算法的渐进时间复杂度为( ),若问题的规模增加了16倍,则运行时间增加(请作答此空)倍。A.16B.64C.256D.1024
某个算法的时间复杂度递归式T(n)=T(n-1)+n,其中n为问题的规模,则该算法的渐进时间复杂度为( ),若问题的规模增加了16倍,则运行时间增加(请作答此空)倍。
A.16
B.64
C.256
D.1024
B.64
C.256
D.1024
参考解析
解析:对于递归式,假设T(1)=1,则:T(n)=T(n-1)+n=T(n-2)+n-1+n=T(n-3)+n-2+n-1+n=1+2+…+n-1+n=n(n+1)/2可见,时间复杂度为O(n2)。若问题的规模增加了16倍,则运行时间增加了162=256倍。
相关考题:
● 某算法的时间复杂度表达式为 T(n)=an2+bnlgn+cn+d,其中,n为问题的规模,a、b、c和d为常数,用O表示其渐近时间复杂度为 (63)。(63)A. O(n2) B. O (n) C. O (n1gn) D. O (1)
某算法的时间复杂度表达式为T(n)=an2+bnlgn+cn+d,其中,n为问题的规模,a、b、c和d为常数,用O表示其渐近时间复杂度为( )。A.(n2)B.O(n)C.O(nlgn)D.O(1)
A算法的时间复杂度为O(n^3),B算法的时间复杂度为O(2n),则说明()。 A对于任何的数据量,A算法的时间开销都比B算法小B随着问题规模n的增大,A算法比B算法有效C随着问题规模n的增大,B算法比A算法有效D对于任何数据量,B算法的时间开销都比A算法小
● 若某算法在问题规模为 n 时,其基本操作的重复次数可由下式表示,则该算法的时间复杂度为 (64) 。(64)A. O(n) B. O(n2) C. O(logn) D. O(nlogn)
计算N!的递归算法如下,求解该算法的时间复杂度时,只考虑相乘操作,则算法的计算时间T(n)的递推关系式为(55);对应时间复杂度为(56)。int Factorial (int n){//计算n!if(n<=1)return 1;else return n * Factorial(n-1);}(62)A.T(n)=T(n-1)+1B.T(n)=T(n-1)C.T(n)=2T(n-1)+1D.T(n)=2T(n-1)-1
设求解某问题的递归算法如下:F(int n){if n=1 {Move(1)}else{F(n-1);Move(n);F(n-1);}}求解该算法的计算时间时,仅考虑算法Move所做的计算为主要计算,且Move为常数级算法。则算法F的计算时间T(n)的递推关系式为(9);设算法Move的计算时间为k,当 n=4时,算法F的计算时间为(10)。A.T(n)=T(n-1)+1B.T(n)=2T(n-1)C.T(n)=2T(n-1)+1D.T(n)=2T(n+1)+1
在某个算法时间复杂度递归式T(n)=T(n-1)+n,其中n为问题的规模,则该算法的渐进时间复杂度为( ),若问题的规模增加了16倍,则运行时间增加( )倍。A.(n) B.(nlgn) C.(n2) D.(n2lgn) A.16 B.64 C.256 D.1024
某个算法的时间复杂度递归式T(n)=T(n-1)+n,其中n为问题的规模,则该算法的渐进时间复杂度为 ( ) ,若问题的规模增加了16倍,则运行时间增加 (请作答此空) 倍。A.16B.64C.256D.1024
某个算法的时间复杂度递归式T(n)=T(n-1)+n,其中n为问题的规模,则该算法的渐进时间复杂度为 (请作答此空) ,若问题的规模增加了16倍,则运行时间增加 ( ) 倍。A.O(n)B.O(nlgn)C.O(n2)D.O(n2lgn)
某个算法的时间复杂度递归式T(n)=T(n-1)+n,其中n为问题的规模,则该算法的渐进时间复杂度为(62),若问题的规模增加了16倍,则运行时间增加(63)倍。A.16B.64C.256D.1024
已知算法A的运行时间函数为T(n)=8T(n/2)+n2,其中n表示问题的规模,另已知算法B的运行时间函数为T(n)=XT(n/4)+n2,其中n表示问题的规模。对充分大的n,若要算法B比算法A快,则X的最大值为( )。A.15B.17C.63D.65
某个算法的时间复杂度递归式T(n)=T(n-1)+n,其中n为问题的规模,则该算法的渐进时间复杂度为(62),若问题的规模增加了16倍,则运行时间增加(63)倍。 A.O(n)B.O(nlgn)C.O(n2)D.O(n2lgn)
填空题设待处理问题的规模为n,若一个算法的时间复杂度为一个常数,则表示成数量级的形式为(),若为n*log25n,则表示成数量级的形式为()。