最近在自学数据结构,有六道题目想不明白,望大佬解答,要思路和过程,谢谢

1.假设以数组A[n]存放循环队列的元素,其头、尾指针分别为front和rear。若设定尾指针指向队列中的队尾元素,头指针指向队列中队头元素的前一个位置,则当前存于队列中的元素个数为(       )

A.(rear-front-1)%n                    B.(rear-front)%n

C.(front-rear+1)%n                    D.(rear-front+n)%n

2.二维数组A[4][5]按行优先顺序存储,若每个元素占2个存储单元,且第一个元素A[0][0]的存储地址为1000,则数组元素A[3][2]的存储地址为(       )

A.1012                                B.1017

C.1034                                D.1036

3.   假设以数组A[n]存放循环队列的元素,其头指针front指向队头元素的前一个位置、尾指

针rear指向队尾元素所在的存储位置,则在少用一个元素空间的前提下,队列满的判定条件为()

A.    rear==front

B.    (front+1)%n==rear

C.    rear+1==front

D.   (rear+1)%n==front

4.    二维数组A[10][6]采用行优先的存储方法,若每个元素占4个存储单元,已知元素

A[3][4]的存储地址为1000,则元素A[4][3]的存储地址为()

A.    1020

B.    1024

C.    1036

D.   1240

5.设有一个10阶的下三角矩阵A,采用行优先压缩存储方式,all为第一个元素,其存储地址为1000,每个元素占一个地址单元,则a85的地址为    ( )

A.1012                              B.1017

C.1032                              D.1039

6.已知循环队列的存储空间大小为m,队头指针front指向队头元素,队尾指针rear指向队尾元素的下一个位置,则向队列中插入新元素时,修改指针的操作是(      )

A.rear=(rear-1)%m;                                   B.front=(front+1)%m;

C.front=(front-1)%m;                                 D.rear=(rear+1)%m;

顶顶

没人吗