2-1
设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为(2分)
A.13
B.33
C.18
D.40
啊这考的线代吧,对称矩阵转为数组存储,第i行第j列元素位于 i(i-1)/2+j
注意第一元素下标
2-2
设有数组A[i,j],数组的每个元素长度为3字节,i的值为1 到8 ,j的值为1 到10,数组从内存首地址BA开始顺序存放,当用以列为主存放时,元素A[5,8]的存储首地址为()。(2分)
A.BA+141
B.BA+180
C.BA+222
D.BA+225
题目说明是以列为主存放,相当于一列满开始下一列,相当于求i=1~10, j=1~8的二维数组中A[8,5]的起始地址,即A[8,4]的终止地址,(8*7+4)*3=180.
点击查看解析
2-3
将一个A[1…100,1…100]的三对角矩阵,按行优先存入一维数组B[1‥298]中,A中元素A6665(即该元素下标i=66,j=65),在B数组中的位置K为()。(2分)
A.198
B.195
C.197
D.199
点击查看解析
2-4
若对n阶对称矩阵A以行序为主序方式将其下三角形的元素(包括主对角线上所有元素)依次存放于一维数组B[1…(n(n+1))/2]中,则在B中确定aij(i<j)的位置k的关系为()。(2分)
A.i*(i-1)/2+j
B.j*
(j-1)/2+i
C.i*(i+1)/2+j
D.j*(j+1)/2+i
i>=j时(上三角形)
以行序为主序:i(i-1)/2+j;
以列序为主序:j(j-1)/2+i;
i<j时(下三角形)
以行序为主序:j(j-1)/2+i;
以列序为主序:i(i-1)/2+j.
2-5
已知广义表L=((x,y,z),a,(u,t,w)),从L表中取出原子项t的运算是()。(2分)
A.head(tail(tail(L)))
B.tail(head(head(tail(L))))
C.head(tail(head(tail(L))))
D.head(tail(head(tail(tail(L)))))
广义表L=((x,y,z),a,(u,t,w)),
第一次tail(L)取出(a,(u,t,w))
第二次tail()取出((u,t,w))
第三次head()取出(u,t,w)
第四次tail()取出(t,w)
第五次head()取出t
2-6
广义表A=(a,b,(c,d),(e,(f,g))),则式子Head(Tail(Head(Tail(Tail(A)))))的值为()。(2分)
A.(g)
B.(d)
C.c
D.d
第一次tail(A)取出(b,(c,d),(e,(f,g)))
第二次tail()取出((c,d),(e,(f,g)))
第三次head()取出(c,d)
第四次tail()取出(d)
第五次head()取出d
2-8
设广义表L=((a,b,c)),则L的长度和深度分别为( )(2分)
A.1和1
B.1和3
C.1和2
D.2和3
2-8
树最适合于用来表示(1分)
A.有序数据元素
B.无序数据元素
C.元素之间无联系的数据
D.元素之间具有分支层次关系的数据