1. 已知int a[3][4];则下列能表示a[1][2]元素值的是(A)
A.*(*(a+1)+2)
B.* ( a + 1 + 2 )
C.( & a [ 0 ] + 1 ) [ 2 ]
D. * ( a [ 0 ] + 1 )
解析:*(a+1)表示第二行的首地址,和a[1]一样。*(a+1)+2第二行第三个数字的地址。*(*(a+1)+2)就是第二行第三个数字的值。也就是a [ 1 ] [ 2 ].
2.若一个广义表的表头为空表,则此广义表亦为空表( B )
A.对 B.错
解析:广义表的表头为空,并不代表该广义表为空表。例如:广义表()和(())不同。前者是长度为0的空表,对其不能做求表头和表尾的运算;而后者是长度为l的非空表(只不过该表中惟一的一个元素是空表),对其可进行分解,得到的表头和表尾均是空表()。
3.设有序顺序表中有n个数据元素,则利用二分查找法查找数据元素X的最多比较次数不超过( A )。
A.log2n+1 B.log2n-1 C.log2n D.log2(n+1)
解析:因为二分查找每次排除掉一半的不适合值,所以对于n个元素的情况:
一次二分剩下:n/2
两次二分剩下:n/2/2 = n/4
……
m次二分剩下