数据结构复习题-第5章答案2014-6-16_第1页
数据结构复习题-第5章答案2014-6-16_第2页
数据结构复习题-第5章答案2014-6-16_第3页
数据结构复习题-第5章答案2014-6-16_第4页
数据结构复习题-第5章答案2014-6-16_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第5章数组与广义表一、选择题〔每题1分,共10分〕一个向量第一个元素的存储地点是100,每个元素的长度为2,那么第5个元素的地点是〔A〕。A.110B.108C.100D.1202.在数组A中,每一个数组元素A[i][j]占用3个存储字节,行下标i从1到8,列下标j从1到10。所有数组元素相继寄存于一个连续的存储空间中,那么寄存该数组起码需要的存储字节数是〔C〕。A.80B.100C.240D.270假定有60行70列的二维数组a[160,170]以列序为主序次序存储,其基地点为10000,每个元素占2个存储单元,那么第32行第58列的元素a[32,58]的存储地点为〔C〕。〔无第0行第0列元素〕A.16902B.16904C.14454D.答案A,B,C均不对4.将一个A[1..100,1..100]的三对角矩阵,按行优先存入一维数组B[1‥298]中,A中元素A6665〔即该元素下标i=66,j=65〕,在B数组中的地点K为〔A〕。A.198B.195C.197D.1965.数组A[0..5,0..6]的每个元素占五个字节,将其按列优先序次存储在开端地点为1000的内存单元中,那么元素A[5,5]的地点是〔A〕。A.1175B.1180C.1205D.12106.假定以行序为主序存储二维数组A=array[1..100,1..100],设每个数据元素占2个存储单元,基地点为10,那么LOC[5,5]=〔B〕。A.808B.818C.1010D.10207.设有数组A[i,j],数组的每个元素长度为3字节,i的值为1到8,j的值为1到10,数组从内存首地点BA开始次序寄存,当用以列为主寄存时,元素A[5,8]的存储首地点为〔B〕。A.BA+141B.BA+180C.BA+222D.BA+2258.设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地点为1,每个元素占一个地点空间,那么a85的地点为〔B〕。A、13B、33C、18D、409.二维数组A的每个元素是由6个字符组成的串,其行下标i=0,1,,8,列下标j=1,2,,10。假定A按行先存储,元素A[8,5]的开端地点与当A按列先存储时的元素〔B〕的开端地点相同。设每个字符占一个字节。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的关系为〔B〕。A、i*(i-1)/2+jB、j*(j-1)/2+IC、i*(i+1)/2+jD、j*(j+1)/2+i11.对稀疏矩阵进行压缩存储目的是〔C〕。A、便于进行矩阵运算B、便于输入和输出C、节俭存储空间D、降低运算的时间复杂度数组r存储静态链表,结点的next域指向后继,工作指针j指向链中结点,使j沿链移动的操作为〔A〕。A、j=r[j].nextB、j=j+1C、j=j->nextD、j=r[j]->next13.数组A[0..4,-3..-1,5..7]中含有元素的个数为〔B〕。精选A、55B、45C、36D、1614.有一个100*90的稀疏矩阵,非0元素有10个,设每个整型数占2字节,那么用三元组表示该矩阵时,所需的字节数是〔B〕。A、60B、66C、18000D、3315.设二维数组A[1..m,1..n]〔即m行n列〕按行存储在数组B[1..m*n]中,那么二维数组元素A[i,j]在一维数组B中的下标为〔A〕。A、〔i-1〕*n+jB、〔i-1〕*n+j-1C、i*〔j-1〕D、j*m+i-116.A[N,N]是对称矩阵,将下面三角〔包括对角线〕以行序存储到一维数组T[N〔N+1〕/2]中,那么对任一上三角元素a[i][j]对应T[k]的下标k是〔B〕。A.i〔i-1〕/2+jB.j〔j-1〕/2+IC.i〔j-i〕/2+1D.j〔i-1〕/2+1设A是n*n的对称矩阵,将A的对角线及对角线上方的元素以列为主的序次寄存在一维数组B[1..n(n+1)/2]中,对上述任一元素aij(1≤i,j≤n,且i≤j)在B中的地点为〔B〕。A、i(i-l)/2+jB、j(j-l)/2+IC、j(j-l)/2+i-1D、i(i-l)/2+j-118.关于以行为主序的存储构造来说.在数组A[c1..d1,c2..d2]中,c1和d1分别为数组A的第一维下标的下、上界,c2和d2分别为第二维下标的下、上界.每个数据元素占k个存储单元,二维数组中任一元素a[i,j]的存储地点可由〔B〕确定。A、Loc[i,j]=[(d2-c2+1)(i-c1)+(j-c2)]×kB、Loc[i,j]=[Loc[c1,c2]+[(d2-c2+1)(i-c1)+(j-c2)]×kC、Loc[i,j]=A[c1,c2]+[(d2-c2+1)(i-c1)+(j-c2)]×kD、Loc[i,j]=Loc[0,0]+[(d2-c2+1)(i-c1)+(j-c2)]×k设矩阵A是一个对称矩阵,为了节俭存储,将其下三角局部(如下列图所示)按行序寄存在一维数组B[1..n(n-1)/2]|中,对下三角局部中任一元素〔i〉=j〕在一维数组B的下标地点k值是〔B〕。A、i(i-1)/2+j-lB、i(i-1)/2+jC、i(i+1)/2+j-1D、i(i+1)/2+j20.稀疏矩阵一般的压缩存储方法有(C)两种。A、二维数组和三维数组B、三元组和散列表C、三元组和十字链表D、散列表和十字链表参照题:21.数组SZ[-35,O10]含有元素数目为〔B〕。A、88B、99C、80D、9022.二维数组A的每个元素是由6个字符组成的串,其行下标i=0、1、、8.列下标i=1、2、、10。假定A按行先存储,元素A[8,5]的开端地点与当A按列先存储时的元素〔B〕的开端地点相同。设每个字符占一个字节。A、A[8,5]B、A[3,10]C、A[5,8]D、A[0,9]23.设有一个10阶的对称矩阵A,采用压缩破除计方式,以行序为主存储,a1,1为第一个元素,其存储地点为1,每个元素占1个地点空间,那么a8,5的地点为〔B〕。精选A、13B、33C、18D、4024.稀疏矩阵进行压缩存储目的是〔C〕。A、便于进行矩阵运算B、便于输入和输出C、节俭存储空间D、降低运算的时间复杂度25.用数组r存储静态链表,结点的next域指向后继,工作指针j指向链中结点,使沿链移动的操作为〔A〕。A、j=r[j].nextB、j=j+1C、j=j->nextD、j=r[j]->next26.数组的根本操作主要包括〔C〕A、成立与删除B、索引与改正C、接见与改正D、接见与索引27.设矩阵A是一个对称矩阵,为了节俭空间,将其下三角矩阵按行序寄存在一维数组B[1,n〔n+1〕/2]中,对下三角局部中任一元素aij〔i≥j〕,在一维数B中下标k的值是〔B〕。A、i〔i-1〕/2+j-1B、i〔i-1〕/2+jC、i〔i+1〕/2+j-1D、i〔i+1〕/2+j8.设有数组A[i,j],数组的每个元素长度为3字节,i的值为1到8,j的值为1到10,数组从内存首地点BA开始次序寄存,当用以列为主寄存时,元素A[8,5]的存储首地点为〔B〕。A、BA+141B、BA+180C、BA+222D、BA+225数组A中,每个元素的长度为3个字节,行下标i从1到8,列下标j从1到10,从首地点SA开始连续寄存的存储器内,该数组按行寄存,元素A[8][5]的开端地点为C。A.SA+141B.SA+144C.SA+222D.SA+225二、判断题〔每题1分,共10分〕一个稀疏矩阵Am*n采用三元组形式表示,假定把三元组中相关行下标与列下标的值交换,并把m和n的值交换,那么就达成了Am*n的转置运算。〔×〕二维以上的数组其实是一种特殊的广义表。〔√〕数组可当作线性构造的一种推广,因此与线性表同样,能够对它进行插入,删除等操作。×〕稀疏矩阵压缩存储后,必会失去随机存取功能。〔√〕5.所谓取广义表的表尾就是返回广义表中最后一个元素。〔×〕6.广义表是由零或多个原予或子表所组成的有限序列,所以广义表可能为空表。(√)7.广义表中的元素或许是一个不可切割的原子,或许是一个非空的广义表。〔×〕8.线性表能够当作是广义表的特例,如果广义表中的每个元素都是原子,那么广义表便成为线性表。(√)9.假定一个广义表的表头为空表,那么此广义表亦为空表。〔×〕10.数组元素的下标值越大,存取时间越长。(×)数组是一种复杂的数据构造:数组元素之间的关系既不是线性的,也不是树形的(√)12.从逻辑构造上看,n维数组的每个元素均属于n个向量。〔√〕13.二维数组是其数据元素为线性表的线性表〔√〕数组是同种类值的会合。〔×〕三、填空题〔每空1分,共10分〕1.二维数组按“行优先次序〞存储在内存中,a11的存储地点为LOC〔a11〕,那么元素aij的存储地点为LOC〔aij〕=。〔假定每一个元素占2个存储单元,1≤i≤n,1≤j≤m〕答案:Loc(a11)+((i-1)*m+j-1)*2精选2.二维数组A[4][4](即A[0..3][0..3])的元素开端地点是loc(A[0][0])=1000,元素的长度为2,那么LOC(A[2][2])的地点为。答案:10203.设有一个二维数组A[10][20],按行寄存于一个连续的存储空间中,A[0][0]的存储地点是200,每个数组元素占1个存储字,那么A[6][2]的存储字地点是____________。答案:3224.二维数组a[4][5][6]〔下标从0开始计,a有4*5*6个元素〕,每个元素的长度是2,那么a[2][3][4]的地点是1164。(设a[0][0][0]的地点是1000,数据以行为主方式存储)解释:LOC(aijk)=LOC(a000)+[v2*v3*(i-c1)+v3*(j-c2)+(k-c3)]*l(l为每个元素所占单元数)5.对矩阵压缩是为了节俭存储空间。6.所谓稀疏矩阵指的是非零元很少(t<<m*n)且散布没有规律。7.设有一个10阶对称矩阵A采用压缩存储方式〔以行为主序存储:a11=1〕,那么a85的地点为33。解释:(k=i(i-1)/2+j)(1<=i,j<=n)8.己知三对角矩阵A[1..9,1..9]的每个元素占2个单元,现将其三条对角线上的元素逐行存储在开端地点为1000的连续的内存单元中,那么元素A[7,8]的地点为1038。解释:三对角矩阵按行存储:k=2(i-1)+j(1<=i,j<=n)9.n阶对称矩阵a知足a[i][j]=a[j][i],i,j=1..n,,用一维数组t存储时,t的长度为n(n+1)/2,当i=j,a[i][j]=t[i(i+1)/2(或j(j+1)/2)],i>j,a[i][j]=t[i(i-1)/2+j],i<j,a[i][j]=t[j(j-1)/2+i(1<=i,j<=n)]。10.设n行n列的下三角矩阵A已压缩到一维数组B[1..n*〔n+1〕/2]中,假定按行为主序存储,那么A[i,j]对应的B中存储地点为i(i-1)/2+j(1<=i,j<=n)。10.设数组A[0..8,1..10],数组中任一元素A[i,j]均占内存48个二进制位,从首地点2000开始连续寄存在主内存里,主内存字长为16位,那么〔l〕寄存该数组起码需要的单元数是270;〔2〕寄存数组的第8列的所有元素起码需要的单元数是27;〔3〕数组按列存储时,元素A[5,8]的开端地点是2204。11.用一维数组B与列优先寄存带状矩阵A中的非零元素A[i,j](1≤i≤n,i-2≤j≤i+2),B中的第8个元素是A中的第1行,第3列的元素。设数组a[1..50,1..80]的基地点为2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论