数据结构第5章例题与答案1
来源:优易学  2010-1-14 18:17:09   【优易学:中国教育考试门户网】   资料下载   IT书店
第 5  章  数组和广义表
一、选择题
1.设有一个10阶的对称矩阵a,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为(    )。【燕山大学 2001 一、2 (2分)】
a. 13               b. 33                c. 18               d. 40
2. 有一个二维数组a[1:6,0:7] 每个数组元素用相邻的6个字节存储,存储器按字节编址,那么这个数组的体积是(①)个字节。假设存储数组元素a[1,0]的第一个字节的地址是0,则存储数组a的最后一个元素的第一个字节的地址是(②)。若按行存储,则a[2,4]的第一个字节的地址是(③)。若按列存储,则a[5,7]的第一个字节的地址是(④)。就一般情况而言,当(⑤)时,按行存储的a[i,j]地址与按列存储的a[j,i]地址相等。供选择的答案:【上海海运学院 1998 二、2 (5分)】
①-④: a.12     b. 66     c. 72     d. 96     e. 114    f. 120 
g. 156    h. 234    i. 276    j. 282    k. 283    l. 288
   ⑤: a.行与列的上界相同              b. 行与列的下界相同 
c. 行与列的上、下界都相同        d. 行的元素个数与列的元素个数相同     
3. 设有数组a[i,j],数组的每个元素长度为3字节,i的值为1 到8 ,j的值为1 到10,数组从内存首地址ba开始顺序存放,当用以列为主存放时,元素a[5,8]的存储首地址为(    )。
a. ba+141            b. ba+180           c. ba+222           d. ba+225
【南京理工大学 1997 一、8 (2分)】
4. 假设以行序为主序存储二维数组a=array[1..100,1..100],设每个数据元素占2个存储单元,基地址为10,则loc[5,5]=(    )。【福州大学 1998 一、10  (2分)】
    a. 808              b. 818              c. 1010             d. 1020
5. 数组a[0..5,0..6]的每个元素占五个字节,将其按列优先次序存储在起始地址为1000的内存单元中,则元素a[5,5]的地址是(     )。【南京理工大学 2001 一、13 (1.5分)】
 a. 1175           b. 1180           c. 1205           d. 1210
6. 有一个二维数组a[0:8,1:5],每个数组元素用相邻的4个字节存储,存储器按字节编址,假设存储数组元素a[0,1]的第一个字节的地址是0,存储数组a的最后一个元素的第一个字节的地址是(  ①  )。若按行存储,则a[3,5]和 a[5,3]的第一个字节的地址是(  ②  ) 和( ③ )。若按列存储,则a[7,1]和a[2,4]的第一个字节的地址是(  ④ )和(  ⑤  )。【上海海运学院 1996 二、1 (5分)】
①-⑤:a.28    b.44    c.76    d.92    e.108    f.116    g.132    h.176    i.184    j.188
7. 将一个a[1..100,1..100]的三对角矩阵,按行优先存入一维数组b[1‥298]中,a中元素a6665(即该元素下标i=66,j=65),在b数组中的位置k为(    )。供选择的答案:
a. 198            b. 195               c. 197   【北京邮电大学 1998 二、5 (2分)】
8. 二维数组a的元素都是6个字符组成的串,行下标i的范围从0到8,列下标j的范圈从1到10。从供选择的答案中选出应填入下列关于数组存储叙述中(    )内的正确答案。
(1)存放a至少需要(    )个字节;
(2)a的第8列和第5行共占(    )个字节;
(3)若a按行存放,元素a[8,5]的起始地址与a按列存放时的元素(    )的起始地址一致。
供选择的答案:
(1)a. 90       b. 180        c. 240       d. 270       e. 540     
(2)a. 108      b. 114        c. 54        d. 60        e. 150     
(3)a. a[8,5]   b. a[3,10]    c. a[5,8]    d. a[0,9]      
【山东工业大学 2000 三、1 (4分)】 【山东大学 1998  三、1 (4分)】 
9. 二维数组a的每个元素是由6个字符组成的串,其行下标i=0,1,…,8,列下标j=1,2,…,10。若a按行先存储,元素a[8,5]的起始地址与当a按列先存储时的元素(    )的起始地址相同。设每个字符占一个字节。【西安电子科技大学  1998 一、2 (2分)】
a. a[8,5]         b. a[3,10]           c. a[5,8]         d. a[0,9]
10. 若对n阶对称矩阵a以行序为主序方式将其下三角形的元素(包括主对角线上所有元素)依次存放于一维数组b[1..(n(n+1))/2]中,则在b中确定aij(i<j)的位置k的关系为(    )。
a. i*(i-1)/2+j   b. j*(j-1)/2+i     c. i*(i+1)/2+j   d. j*(j+1)/2+i
【北京航空航天大学 2000 一、2 (2分)】
11. 设a是n*n的对称矩阵,将a的对角线及对角线上方的元素以列为主的次序存放在一维数组b[1..n(n+1)/2]中,对上述任一元素aij(1≤i,j≤n,且i≤j)在b中的位置为(    )。
a. i(i-l)/2+j     b. j(j-l)/2+i       c. j(j-l)/2+i-1    d. i(i-l)/2+j-1
【南京理工大学 1999 一、9(2分)】
12. a[n,n]是对称矩阵,将下面三角(包括对角线)以行序存储到一维数组t[n(n+1)/2]中,则对任一上三角元素a[i][j]对应t[k]的下标k是(    )。【青岛大学 2002 二、6 (2分)】
a. i(i-1)/2+j    b. j(j-1)/2+i     c. i(j-i)/2+1     d. j(i-1)/2+1
13. 设二维数组a[1.. m,1.. n](即m行n列)按行存储在数组b[1.. m*n]中,则二维数组元素a[i,j]在一维数组b中的下标为(    )。【南京理工大学 1998 一、2 (2分)】
a.(i-1)*n+j     b.(i-1)*n+j-1      c. i*(j-1)        d. j*m+i-1
14. 有一个100*90的稀疏矩阵,非0元素有10个,设每个整型数占2字节,则用三元组表示该矩阵时,所需的字节数是(    )。【南京理工大学 1999 二、8 (2分)】
a. 60             b. 66                c. 18000             d. 33    
15. 数组a[0..4,-1..-3,5..7]中含有元素的个数(    )。【中山大学 1998 二、5(2分)】
a. 55            b. 45               c. 36            d. 16
16. 用数组r存储静态链表,结点的next域指向后继,工作指针j指向链中结点,使j 沿链移动的操作为(     )。【南京理工大学 2001 一、16(1.5分)】
    a. j=r[j].next    b. j=j+1          c. j=j->next     d. j=r[j]-> next
17. 对稀疏矩阵进行压缩存储目的是(    )。【北京工商大学 2001 一、1 (3分)】
a.便于进行矩阵运算  b.便于输入和输出   c.节省存储空间   d.降低运算的时间复杂度
18. 已知广义表l=((x,y,z),a,(u,t,w)),从l表中取出原子项t的运算是(    )。
a. head(tail(tail(l)))            b. tail(head(head(tail(l)))) 
c. head(tail(head(tail(l))))     d. head(tail(head(tail(tail(l)))))
【北京邮电大学 1998 二、4(2分)】

责任编辑:小草

文章搜索:
 相关文章
热点资讯
热门课程培训