数据结构

三元组表示法用一个数组(顺序结构)来表示稀疏矩阵。

题目

三元组表示法用一个数组(顺序结构)来表示稀疏矩阵。

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

如下是一个稀疏矩阵的三元组法存储表示和相关的叙述正确的是

A.该稀疏矩阵有8列

B.该稀疏矩阵有7列

C.该稀疏矩阵有9个非0元素

D.该稀疏矩阵的第3行第6列的值为0


正确答案:B
解析:该稀疏矩阵有7列;稀疏矩阵有7个非0元素;该稀疏矩阵的第3行第6列的值为1。掌握广义表的定义和存储方式,多维数组的存储方式。

第2题:

三元组表示法中每个三元组给出稀疏矩阵中某个非零元素的行号、列号和数值。三元组按【 】优先顺序排列。


正确答案:行

第3题:

如下是一个稀疏矩阵的三元组法存储表示和基于此表示所得出的相关叙述

Ⅰ.该稀疏矩阵有5行

Ⅱ.该稀疏矩阵有4列

Ⅲ.该稀疏矩阵有6个非0元素

这些叙述中_________是正确的。

A.仅Ⅰ

B.Ⅰ和Ⅱ

C.仅Ⅲ

D.全部


正确答案:C
解析:三元组法用一线性表来表示稀疏矩阵。线性表的每个结点对应稀疏矩阵的一个非零元素,每个结点包含三个域,分别为该元素的行下标、列下标和值。结点间的次序按矩阵的行优先顺序排列(跳过零元素)。所以该稀疏矩阵有6个非0元素,而行数和列数是不好确定的。

第4题:

阅读以下说明和流程图,将应填入(n)处的字句写在对应栏内。

【说明】

在一个矩阵中,如果其零元素的个数远远多于其非零元素的个数时,称这样的矩阵为稀疏矩阵。稀疏矩阵通常采用三元组数组表示。每个非零元素用一个三元组来表示,即非零元素的行号、列号和它的值。然后按某种顺序将全部非零元素的三元组存于一个数组中。例如,对于以下二维数组:

int x[3][4]={{1,0,0,0},{0,5,0,0),{0,0,7,2}};

可用以下数组a来表示:

int a[][3]={{3,4,4},{0,0,1},{1,1,5),{2,2,7},{2,3,2}};

其中三元数组a的第1行元素的值分别存储稀疏矩阵×的行数、列数和非零元素的个数。

下面的流程图描述了稀疏矩阵转换的过程。

【流程图】


正确答案:(1)a[0][2]=W; (2)x[i][j]≠0; (3)a[k][2]=x[i][j]; (4)k++; (5)i++;
(1)a[0][2]=W; (2)x[i][j]≠0; (3)a[k][2]=x[i][j]; (4)k++; (5)i++; 解析:本题考查程序流程图及数组的操作。
根据题目的意思,本题的流程图是用来描述稀疏矩阵转换过程的。而三元数组d的第1行元素的值分别用来存储稀疏矩阵x的行数、列数和非零元素个数,在第(1)空位置处,前面已经分别存储了稀疏矩阵x的行数和列数,只差非零元素的个数没有存储进数组a。因此,此空应该填a[0][2]=W。
在第(2)空的前面有两条判断语句,我们可以看出它们是为了保证取到的元素是稀疏矩阵中的元素,再往下我们应该判断此元素是否是0,因此,此空应该填x[i][j]≠0。
根据程序流程图,如果第(2)空中的条件为真,即取到的元素不为0,那么我们应该将该元素存放到三元数组a中,第(3)空的前面两条语句已经分别用于存储了稀疏矩阵非0元素的行号和列号,那么接下来应该是保存其值。因此,此空的答案是 a[k][2]=x[i][j]。
由题目中对三元数组a的描述可以知道,三元数组a的每一行只存储3个元素。再看流程图,第(4)空的前面三条语句都表示向三元数组a中存储一个元素。因此,如果再要往数组中添加元素,就需要存放到另外一行。因此,第(4)空应该是将数组的行号加1,即 k++。
结合流程图中三个判断语句的结构和作用来分析,第(5)空应该是i++,它的作用是保证能取到稀疏矩阵中每一行的元素。

第5题:

如下是二个稀疏矩阵的三元组法存储表示和相关的叙述

Ⅰ.该稀疏矩阵有5行

Ⅱ.该稀疏矩阵有4列

Ⅲ.该稀疏矩阵有6个非0元素

这些叙述中那个(些)是正确的?

A.只有Ⅰ

B.Ⅰ和Ⅱ

C.只有Ⅲ

D.Ⅰ、Ⅱ和Ⅲ


正确答案:D
解析:可以按照稀疏矩阵的三元组表示法把它还原成为普通矩阵。看第一列,行号的变化范围是1到5,这说明一共有5行;列号的变化范围是1到4,这说明一共有4列;表中一共提供了6个非零值,所以该矩阵有6个非零元素。对照题干中的三项可知:Ⅰ、Ⅱ和Ⅲ都是正确的。

第6题:

如下是一个稀疏矩阵的三元组法存储表示和相关的叙述

行下标

列下标

1

1

3

1

4

5

2

3

2

3

2

6

3

4

5

5

3

3

I.该稀疏矩阵有5行

II.该稀疏矩阵有4列

III.该稀疏矩阵有6个非0元素

这些叙述中哪个(些)是正确的?

A.只有I

B.I和II

C.只有III

D.I、II和III


正确答案:C

第7题:

在稀疏矩阵的顺序存储中,利用一个数组来存储非零元素,该数组的长度应等于对应三元组线性表的长度。()

此题为判断题(对,错)。


正确答案:√

第8题:

如下是一个稀疏矩阵的三元组法存储表示和相关的叙述:

Ⅰ该稀疏矩阵有5行,

Ⅱ该稀疏矩阵有4行,

Ⅲ该稀疏矩阵有6个非0元素,

这些叙述中哪个(些)是正确的?

A.只有I

B.I和II

C.只有III

D.I、II和III


正确答案:C
解析:稀疏矩阵指具有大量0元素的矩阵,对于稀疏矩阵可以采用压缩存储,只存储非零元素。三元组存储方法是用线性表来表示稀疏矩 阵。上述稀疏矩阵的三元组存储表中只有6个非零元素。

第9题:

稀疏矩阵是大量元素为0的矩阵。采用三元组法存储时,若有n个三元组,则该稀疏矩阵有 ______个非零元素。


正确答案:n
n 解析:三元组方法存储稀疏矩阵是将稀疏矩阵中所有非零元素列举出来的,因而从三元组的行数就可以知道非零元素的个数。

第10题:

如下是一个稀疏矩阵的三元组法存储表示和相关的叙述:

①该稀疏矩阵有5行

②该稀疏矩阵有4列

③该稀疏矩阵有6个非0元素

这些叙述中哪个(些)是正确的? ( )

A.只有①

B.①和②

C.只有③

D.①、②和③


正确答案:B

更多相关问题