数据结构与算法2稀疏矩阵与广义表

1-1

分数 2

作者 王东单位 贵州师范学院

对特殊矩阵采用压缩存储的主要目的是( )。

A.表达变得简单

B.对矩阵元素的存取变得简单

C.去掉矩阵中的多余元素

D.减少不必要的存储空间


2-2

分数 2

作者 王东单位 贵州师范学院

有一个n×n的对称矩阵A,将其下三角部分按行存放在一维数组B中,而A[0][0]存放于B[0]中,则第i行的对角元素A[i][i]存放于B中的( )处。

A.(i+3)i/2

B.(i+1)i/2

C.(2n-i+1)i/2

D.(2n-i-1)i/2


2-3

分数 2

作者 李廷元单位 中国民用航空飞行学院

设矩阵A是一个对称矩阵,为了节省存储空间,将其下三角部分按照行优先存放在一维数组B[0..n(n+1)/2-1]中,对于下三角部分的任一元素a_{i,j}(i>=j,i和j从0开始取值),在一维数组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


2-4

分数 2

作者 李廷元单位 中国民用航空飞行学院

稀疏矩阵一般的压缩存储方法有____。两种。

A.二维数组和三维数组

B.三元组和散列

C.三元组和十字链表

D.散列和十字链表


2-5

分数 2

作者 黄诚单位 西南石油大学

(SWPU-DS)设有一个 10 阶的对称矩阵 A,采用压缩存储方式,以行序为主存储,a[1, 1] 为第一元素,其存储地址为 1,每个元素占一个地址空间,则 a[8, 5] 的地址为( )。

A.13

B.32

C.33

D.40


2-6

分数 2

作者 黄诚单位 西南石油大学

(SWPU-DS)若有 n 阶对称矩阵 A,以行序为主序方式,将其下三角形的元素(包括主对角线上所有元素)依次存放于一维数组B[1..(n(n+1))/2]中,则在 B 中确定 a[i, j](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


2-7

分数 2

作者 黄诚单位 西南石油大学

(SWPU-DS)二维数组 A 的每个元素是由 10 个字符组成的串,其行下标 i=0,1,…,8,列下标 j=1,2,…,10。若 A 按行序优先存储,元素 A[8,5] 的起始地址与当 A 按列序优先存储时的元素( )的起始地址相同。设每个字符占一个字节。

A.A[8,5]

B.A[3,10]

C.A[5,8]

D.A[0,9]


2-8

分数 2

作者 黄诚单位 西南石油大学

(SWPU-DS)对于 C 语言的二维数组 int A[m][n],每个元素占 2 个字节,数组中元素 a[i,j]的存储位置可由( )式确定。

A.Loc[i, j]=A[m, n]+(n×i + j )×2

B.Loc[i, j]=Loc[0, 0]+[ (m+n)×i+j ]×2

C.Loc[i, j]=Loc[0, 0]+ (n×i+j)×2

D.Loc[i, j]= (n×i+j)×2


2-9

分数 2

作者 黄诚单位 西南石油大学

(SWPU-DS)数组 A[0..5, 0..6] 的每个元素占 5 个字节,将其按列优先次序存储在起始地址为 1000 的内存单元中,则元素 A[5, 5] 的地址是( )。

A.1175

B.1180

C.1205

D.1210


2-10

分数 2

作者 黄诚单位 西南石油大学

(SWPU-DS)广义表 A=(a,b,(c,d),(e,(f,g))),则 Head( Tail( Head( Tail( Tail(A) ) ) ) ) 的值为( )。

A.(g)

B.(d)

C.c

D.d


2-11

分数 2

作者 黄诚单位 西南石油大学

(SWPU-DS)广义表 ((a,b,c,d)) 的表头是( )。

A.a

B.( )

C.(a,b,c,d)

D.(b,c,d)


2-12

分数 2

作者 黄诚单位 西南石油大学

(SWPU-DS)广义表((a,b,c,d))的表尾是( )。

A.a

B.( )

C.(a,b,c,d)

D.(b,c,d)


2-13

分数 2

作者 黄诚单位 西南石油大学

(SWPU-DS)设广义表 L=((a,b,c)),则 L 的长度和深度分别为( )。

A.1和1

B.1和3

C.1和2

D.2和3


2-14

分数 2

作者 黄诚单位 西南石油大学

(SWPU-DS)已知广义表 LS=((a,b,c),(d,e,f)),运用 Head 和 Tail 函数取出 LS 中原子 e 的运算是( )。

A.Head( Tail(LS) )

B.Tail( Head(LS) )

C.Head( Tail( Head( Tail(LS) ) ) )

D.Head( Tail( Tail( Head(LS) ) ) )


4-1

设二维数组a[10][20],每个数组元素占用1个存储单元,若按列优先顺序存放数组元素,a[0][0]的存储地址为200,则a[6][2]的存储地址是多少?

226

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
顺序表是一种经典的数据结构,它可以用来存储一组具有相同数据类型的元素,并且这些元素在内存中是连续存储的。顺序表在内存中的存储方式类似于数组,因此可以通过下标来快速访问元素。 在顺序表中,元素的插入和删除操作可能会导致元素位置的移动,因此需要进行数据的搬移操作,这是其一个缺点。另外,顺序表的大小是固定的,一旦超过了预分配的空间,需要进行扩容操作。 算法是指解决问题的一系列步骤或规则。在数据结构与算法中,我们可以使用顺序表来实现各种常见的算法,比如线性查找、二分查找、插入排序、选择排序等等。 线性查找是一种简单的查找算法,它从顺序表的第一个元素开始逐个比较,直到找到目标元素或者遍历完整个顺序表。 二分查找是一种高效的查找算法,它只适用于有序顺序表,通过比较目标元素与中间元素的大小关系来确定查找范围,从而快速缩小查找范围。 插入排序是一种简单直观的排序算法,它通过构建有序子序列的方式来逐步扩大排序范围,将后面的元素插入到有序子序列的正确位置。 选择排序是一种简单的排序算法,它每次从未排序的元素中选择最小(或最大)的元素,然后放到已排序部分的末尾。 以上只是顺序表和部分相关算法的简单介绍,希望能对你有所帮助。如果你有更多关于顺序表和算法的问题,请继续提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值