1.下列算法的时间复杂度是( A ).
void binary ( int n)
{ while(n)
{ cout<<n;
n=n/2;
}
}
A.O(log2n)
B.O(n)
C.O(n/2)
D.O(n2)
时间复杂度:在一个程序中,运行最频繁的某条语句的运行次数
这里虽然是除以2进行递减,但是其实相当于
for(i=1; i<=n; i++)
{i=i*2;}的反过程。
设次数为X,222…=n→2^X=n→X=log2n;
2.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是( ).
A.110
B.108
C.100
D.120
线性表中第i个数据元素ai的存储位置:
地址从零开始!
LOC(ai+1)=LOC(ai)+(i-1)*l