1、设有二维数组A(m*n),其中每个元素占w个存储单元,第一个元素a[1][1]的起始地址为L,则以列主序方式存储a[i][j]的存储单元地址是__________.
2、C语言是按行主序方式顺序存储数组,设有定义int a[3][2][2][3];要求列出其所有数组元素在内存中的存储次序.
3、试编写算法,将数组int A[n]中的所有奇数移到所有偶数之前.要求时间复杂度为O(n).
4、在C语言中有定义,float b[5][7];设其首地址是1900,则元素 b[3][5]的存储地址是________.
5、设矩阵A是一个对称矩阵,为了节省存储,将其下三角部分按行序存放在一维数组B[ 1, n(n-1)/2 ]中,对下三角部分中任一元素ai,j(i≤j), 在一维数组B中下标k的值是( )
A、i(i-1)/2+j-1 B、i(i-1)/2+j C、i(i+1)/2+j-1 D、i(i+1)/2+j
6、数组通常只有两种运算_________和_______
7、什么是稀疏矩阵?
8、三维数组a[5][7][9]共含有_______个元素.
9、数组通常采用链式存储结构( )
10、设数组a[1…60, 1…70]的基地址为2048,每个元素占2个存储单元,若以列序为主序顺序存储,则元素a[32,58]的存储地址为 。
11、求三维数组A(m*n*p)按行优先顺序存储的地址计算公式___________.
其中:d为每个元素占的存储单元数.
12、求下列广义表运算的结果
(1) head((x,y,z))=______________
(2) tail((a,b),(x,y))=_______________.
13、求下列广义表运算的结果
(1)head(tail((x,y),(a,b)))=________________
(2)tail(head((a,b,c),(x,y),(e,f)))=______________
14、假设有60行70列的二维数组a[1…60, 1…70]以列序为主序顺序存储,其基地址为10000,每个元素占2个存储单元,那么第32行第58列的元素a[32,58]的存储地址为( )。(无第0行第0列元素)
A、16902 B、16904 C、14454 D、答案A, B, C均不对
15、三元素组表中的每个结点对应于稀疏矩阵的一个非零元素,它包含有三个数据项,分别表示该元素的行下标、 和 。
16、求下列广义表操作的结果:GetHead【((a,b),(c,d))】=== ; GetHead【GetTail【((a,b),(c,d))】】=== ;
17、求下列广义表操作的结果:GetHead【GetTail【GetHead【((a,b),(c,d))】】】=== ; GetTail【GetHead【GetTail【((a,b),(c,d))】】】=== ;