数据结构课后习题第45章.docx

上传人:b****8 文档编号:10907750 上传时间:2023-02-23 格式:DOCX 页数:22 大小:109.92KB
下载 相关 举报
数据结构课后习题第45章.docx_第1页
第1页 / 共22页
数据结构课后习题第45章.docx_第2页
第2页 / 共22页
数据结构课后习题第45章.docx_第3页
第3页 / 共22页
数据结构课后习题第45章.docx_第4页
第4页 / 共22页
数据结构课后习题第45章.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

数据结构课后习题第45章.docx

《数据结构课后习题第45章.docx》由会员分享,可在线阅读,更多相关《数据结构课后习题第45章.docx(22页珍藏版)》请在冰豆网上搜索。

数据结构课后习题第45章.docx

数据结构课后习题第45章

【课后习题】第4章串

第5章数组和广义表

 网络工程2010级()班学号:

姓名:

题号

总分

得分

一、填空题(每空1分,共30分)

1.串有三种机内表示方法:

、和,其中前两种属于顺序存储结构,第三种属于。

2.若n为主串长度,m为子串长度,则串的BF(朴素)匹配算法最坏的情况下需要比较字符的总次数为,T(n)=。

3.是任意串的子串;任意串S都是S本身的子串,除S本身外,S的其他子串称为S的。

4.设数组a[1…50,1…60]的基地址为1000,每个元素占2个存储单元,若以行序为主序顺序存储,则元素a[32,58]的存储地址为。

5.对于数组,比较适于采用结构够进行存储。

6.广义表的深度是指_______。

7.将一个

的三对角矩阵,按行优先存入一维数组B[297]中,A中元素

在B数组中的位置k为。

8.注意:

ai,j的k为2(i-1)+j-1,(i=1时j=1,2;1

9.                称为空串;   称为空白串。

10.求串T在主串S中首次出现的位置的操作是,其中     称为目标串,   称为模式。

11.对称矩阵的下三角元素a[i,j],存放在一维数组V的元素V[k]中(下标都是从0开始),

12.k与i,j的关系是:

k=        。

13.在n维数组中每个元素都受到         个条件的约束。

14.同一数组中的各元素的长度         。

15.三元素组表中的每个结点对应于稀疏矩阵的一个非零元素,它包含有三个数据项,分别表示该元素的、和。

16.稀疏矩阵中有n个非零元素,则其三元组有         行。

17.求下列广义表操作的结果:

18.

(1)GetHead【((a,b),(c,d))】===;

19.

(2)GetHead【GetTail【((a,b),(c,d))】】===;

20.(3)GetHead【GetTail【GetHead【((a,b),(c,d))】】】===;

21.(4)GetTail【GetHead【GetTail【((a,b),(c,d))】】】===;

22.广义表E=(a,(b,E)),则E的长度=,深度=;

二、判断题(如果正确,在下表对应位置打“√”,否则打“⨯”。

每题1分,共10分)

题号

1

2

3

4

5

6

7

8

9

10

答案

 

 

 

 

 

 

 

 

 

1.串是字符的有限序列 。

     

2.串与线性表的运算有所不同,是以“串的整体”作为操作对象。

3.空串是由空格构成的串。

4.如果一个串中的所有字符均在另一个串中出现,则说明前者是后者的子串。

5. 串既可以采用顺序存储,也可以采链式存储。

6.数组的顺序存储结构,有行(低地址)优先和列(高地址)优先两种不同的顺序。

7.具备压缩条件的矩阵有:

对称矩阵,对角矩阵,稀疏矩阵等。

8.任何一个非空的广义表,表头可能是原子,也可能是列表;但表尾一定是列表;

9.三元组顺序表又称有序的双下标法,它可以随机存取某一行中的非零元素。

10.若采用三元组压缩技术存储稀疏矩阵,只要把每个元素的行下标和列下标互换,就完成了对该矩阵的转置运算

三、单项选择(请将正确答案的代号填写在下表对应题号下面。

每题1.5分,共36分)

题号

1

2

3

4

5

6

7

8

9

10

11

12

答案

题号

13

14

15

16

17

18

19

20

21

22

23

24

答案

 

 

 

 

 

 

 

 

 

1.串是一种特殊的线性表,其特殊性体现在:

(    )

2.A.可以顺序存储      B.数据元素是一个字符     

3.C.可以链式存储       D.数据元素可以是多个字符

4.设串s1=’ABCDEFG’,s2=’PQRST’,函数concat(x,y)返回x和y串的连接串,subs(s,i,j)返回串s的从序号i开始的j个字符组成的子串,len(s)返回串s的长度,

5.则concat(subs(s1,2,len(s2)),subs(s1,len(s2),2))的结果串是:

(   )A.BCDEF      B.BCDEFG    C.BCPQRST       D.BCDEFEF

6.设有两个串s和t,求t在s中首次出现的位置的运算称作()

7.A)连接B)模式匹配C)求子串D)求串长

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

行下标列下标值

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)仅IB)I和IIC)仅IIID)全部

9.广义表((a),a)的表头和表尾分别是()。

10.A)a,((a))B)(a),(a)C)b,(a)D)((a)),a

11.一个广义表为(a,(a,b),d,e,((i,j),k)),则该广义表的长度和深度分别是()。

12.A)5,3B)5,4C)4,3D)4,4

13. 设串sl=“DataStructureswithJava”,s2=“it”,则子串定位函数index(s1,s2,3)的值为()。

14.A.15B.16C.17D.18

15.二维数组A[8][9]按行优先顺序存储,若数组元素A[2][3]的存储地址为1087,A[4][7]的存储地址为1153,则数组元素A[6][7]的存储地址为()。

16.A.1207B.1209C.1211D.1213

17.()不是"Yu**Jia**Shan"的子串。

18.A."Yu"B."Jia"C."**Shan"D."YuJiaShan"

19.设矩阵A是一个对称矩阵,为了节省存储,将其下三角部分(如下图所示)按行序存放在一维数组B[1,n(n-1)/2]中,对下三角部分中任一元素ai,j(i≤j),在一维数组B中下标k的值是:

20.A.i(i+1)/2+j-1B.i(i-1)/2+jC.i(i-1)/2+j-1D.i(i+1)/2+j

21.若块链存储结构中每个结点存放4个字符,每个指针占2个字节,则它的存储密度为()

22.A.3/2B.2/3C.1/2D.1/3

23.数组的基本操作是(   )。

24. A.插入数组元素             B.删除数组元素       C.只可以读       D.读和写

25.同一个数组中的元素(   )。

26. A.长度可以不同             B.类型不限               C.类型相同       D.长度不限

27.数组结构一旦确定,其元素的个数是(   )。

28. A.不变的           B.可变的            C.任意的           D.0

29.一个数组一旦说明,其占用空间的大小(   )。

30. A.已固定           B.可以改变               C.不能固定       D.动态变化

31.数组与一般线性表的区别主要在(   )。

32. A.存储方面              B.元素类型一致

33. C.逻辑结构方面             D.不能进行插入、删除运算

34.一维数组的元素起始地址loc[6]=1000,元素长度为4,则loc[8]为(   )。

35. A.1032        B.1004                C.1008               D.8

36.已知一个稀疏矩阵的三元组表如下:

37.{(1,2,3,),(1,6,1),(3,1,5), (3,2,-1),(4,5,4),(5,1,-3)},则其转置矩阵的三元组表中第3个三元组为(   )。

38. A.(2,1,3)       B.(3,1,5)             C.(3,2,-1)           D.(2,3,-1.)

39.下图表示串的()存储结构。

A、定长顺序;B、不定长顺序;C、堆分配;D、块链。

40.如下结构为矩阵按行存储的三元组顺序表T,则对该矩阵的第2行第1列处元素加4的语句为()。

0

1

2

3

4

5

6

7

8

9

10

11

……

n-1

mu

6

data

i

1

1

2

3

5

5

6

……

Nu

5

j

1

2

1

3

1

4

5

……

Tu

7

e

3

-6

-5

-3

12

3

2

……

A、

;B、

C、

;D、

41.假设有按行顺序存储的二维数组

,每个元素用相邻的c个字节存储,存储器按字节编址。

已知数组第一个元素

的起始存储地址为1000,则

的起始存储地址是()。

42.A、

;B、

43.C、

;D、

44.如下结构为矩阵按行存储的行逻辑链接的三元组顺序表T,则该矩阵第5行具有非零元素数为()。

0

1

2

3

4

5

6

7

8

9

10

11

……

n-1

mu

6

data

i

1

1

2

3

5

5

5

6

……

Nu

5

j

1

4

5

2

1

4

5

5

……

Tu

8

e

XX文库-让每个人平等地提升自我

XX文库-让每个人平等地提升自我3

-6

-5

-3

12

3

2

5

……

rpos

1

3

4

5

5

8

……

A、

;B、

C、

;D、

45.

如下为一广义表的扩展线性链表存储表示如图3所示,其表示的广义表为()。

A、((),a,((b,c),(),d),(((e))));

B、((()),a,((b,c),(),d),(((e))));

C、((()),a,(b,c,(),d),(((e))));

D、((()),a,((b,c),(),d),((e)))。

46.广义表A=(a,(b),(),(c,d,e))的长度为()

47.A.3B.4C.5D.6

四、应用题(24分)

1.(6分)某广义表的表头和表尾均为(a,(b,c)),画出该广义表的图形表示。

 

2.(6分)已知两个6×7的稀疏矩阵的三元组表分别如下:

0

1

3

50

0

1

1

12

1

2

2

18

1

2

2

-22

2

3

4

-25

2

2

5

69

3

4

2

28

3

3

4

25

4

5

3

10

4

4

1

33

5

4

2

15

请画出这两个稀疏矩阵之和的三元组表。

 

3、(12分)函数strcmp()是比较两个字符串s和t的大小。

若st,函数返回正数。

intstrcmp(char*s,char*t)

{while(*s&&*t&&________){

   ;;

   }

   return______;

}

【课后习题】第4章~第5章参考答案

一、填空题(每空1分,共30分)

1.串有三种机内表示方法:

定长顺序存储、堆分配存储和块链存储,其中前两种属于顺序存储结构,第三种属于链式存储结构。

2.若n为主串长度,m为子串长度,则串的BF(朴素)匹配算法最坏的情况下需要比较字符的总次数为(n-m+1)*m,T(n)=O(n*m).

3.空串是任意串的子串;任意串S都是S本身的子串,除S本身外,S的其他子串称为S的真子串。

4.设数组a[1…50,1…60]的基地址为1000,每个元素占2个存储单元,若以行序为主序顺序存储,则元素a[32,58]的存储地址为4834。

5.对于数组,比较适于采用顺序结构够进行存储。

6.广义表的深度是指_表展开后所含括号的层数______。

7.将一个

的三对角矩阵,按行优先存入一维数组B[297]中,A中元素

在B数组中的位置k为195。

8.注意:

ai,j的k为2(i-1)+j-1,(i=1时j=1,2;1

9.     长度为0的串            称为空串; 一个或多个空格符组成的串  称为空白串。

10.求串T在主串S中首次出现的位置的操作是子串定位(模式匹配),其中   S    称为目标串,   T  称为模式。

11.对称矩阵的下三角元素a[i,j],存放在一维数组V的元素V[k]中(下标都是从0开始),

12.k与i,j的关系是:

k= (i+1)*i/2+j。

13.在n维数组中每个元素都受到  n  个条件的约束。

14.同一数组中的各元素的长度 必须相等。

15.三元素组表中的每个结点对应于稀疏矩阵的一个非零元素,它包含有三个数据项,分别表示该元素的行下标、列下标和元素值。

16.稀疏矩阵中有t个非零元素,则其三元组有    t 行。

17.求下列广义表操作的结果:

18.

(1)GetHead【((a,b),(c,d))】===(a,b);

19.

(2)GetHead【GetTail【((a,b),(c,d))】】===(c,d);

20.(3)GetHead【GetTail【GetHead【((a,b),(c,d))】】】===b;

21.(4)GetTail【GetHead【GetTail【((a,b),(c,d))】】】===(d);

22.广义表E=(a,(b,E)),则E的长度=2,深度=无穷;

二、判断题(如果正确,在下表对应位置打“√”,否则打“⨯”。

每题1分,共10分)

题号

1

2

3

4

5

6

7

8

9

10

答案

√ 

√ 

⨯ 

⨯ 

√ 

√ 

√ 

√ 

⨯ 

三、单项选择(请将正确答案的代号填写在下表对应题号下面。

每题1.5分,共36分)

题号

1

2

3

4

5

6

7

8

9

10

11

12

答案

B

D

B

C

B

A

D

A

D

B

B

D

题号

13

14

15

16

17

18

19

20

21

22

23

24

答案

C 

A

A

D 

C

A

D

D

B

D

B

B

四、应用题(24分)

1.(6分)

2.(6分)两个稀疏矩阵之和的三元组表。

1

1

12

1

3

50

2

2

-4

2

5

69

4

1

33

4

2

43

5

3

10

3、(12分)函数strcmp()是比较两个字符串s和t的大小。

若st,函数返回正数。

intstrcmp(char*s,char*t)

{while(*s&&*t&&__*s==*t__){

   s++;t++;   }

   return__*s-*t____;

}

【课后习题】第4章串

第5章数组和广义表(参考答案)

 网络工程2010级()班学号:

姓名:

题号

总分

得分

30

10

36

24

一、填空题(每空1分,共30分)

1.串有三种机内表示方法:

定长顺序存储、堆分配存储和块链存储,其中前两种属于顺序存储结构,第三种属于链式存储结构。

2.若n为主串长度,m为子串长度,则串的BF(朴素)匹配算法最坏的情况下需要比较字符的总次数为(n-m+1)*m,T(n)=O(n*m).

3.空串是任意串的子串;任意串S都是S本身的子串,除S本身外,S的其他子串称为S的真子串。

4.设数组a[1…50,1…60]的基地址为1000,每个元素占2个存储单元,若以行序为主序顺序存储,则元素a[32,58]的存储地址为4834。

5.对于数组,比较适于采用顺序结构够进行存储。

6.广义表的深度是指_表展开后所含括号的层数______。

7.将一个

的三对角矩阵,按行优先存入一维数组B[297]中,A中元素

在B数组中的位置k为195。

8.注意:

ai,j的k为2(i-1)+j-1,(i=1时j=1,2;1

9.     长度为0的串            称为空串; 一个或多个空格符组成的串  称为空白串。

10.求串T在主串S中首次出现的位置的操作是子串定位(模式匹配),其中   S    称为目标串,   T  称为模式。

11.对称矩阵的下三角元素a[i,j],存放在一维数组V的元素V[k]中(下标都是从0开始),

12.k与i,j的关系是:

k= (i+1)*i/2+j。

13.在n维数组中每个元素都受到  n  个条件的约束。

14.同一数组中的各元素的长度 必须相等。

15.三元素组表中的每个结点对应于稀疏矩阵的一个非零元素,它包含有三个数据项,分别表示该元素的行下标、列下标和元素值。

16.稀疏矩阵中有t个非零元素,则其三元组有    t 行。

17.求下列广义表操作的结果:

18.

(1)GetHead【((a,b),(c,d))】===(a,b);

19.

(2)GetHead【GetTail【((a,b),(c,d))】】===(c,d);

20.(3)GetHead【GetTail【GetHead【((a,b),(c,d))】】】===b;

21.(4)GetTail【GetHead【GetTail【((a,b),(c,d))】】】===(d);

22.广义表E=(a,(b,E)),则E的长度=2,深度=无穷;

二、判断题(如果正确,在下表对应位置打“√”,否则打“⨯”。

每题1分,共10分)

题号

1

2

3

4

5

6

7

8

9

10

答案

√ 

√ 

⨯ 

⨯ 

√ 

√ 

√ 

√ 

⨯ 

1.串是字符的有限序列 。

     

2.串与线性表的运算有所不同,是以“串的整体”作为操作对象。

3.空串是由空格构成的串。

4.如果一个串中的所有字符均在另一个串中出现,则说明前者是后者的子串。

5. 串既可以采用顺序存储,也可以采链式存储。

6.数组的顺序存储结构,有行(低地址)优先和列(高地址)优先两种不同的顺序。

7.具备压缩条件的矩阵有:

对称矩阵,对角矩阵,稀疏矩阵等。

8.任何一个非空的广义表,表头可能是原子,也可能是列表;但表尾一定是列表;

9.三元组顺序表又称有序的双下标法,它可以随机存取某一行中的非零元素。

10.若采用三元组压缩技术存储稀疏矩阵,只要把每个元素的行下标和列下标互换,就完成了对该矩阵的转置运算

三、单项选择(请将正确答案的代号填写在下表对应题号下面。

每题1.5分,共36分)

题号

1

2

3

4

5

6

7

8

9

10

11

12

答案

B

D

B

C

B

A

D

A

D

B

B

D

题号

13

14

15

16

17

18

19

20

21

22

23

24

答案

C 

A

A

D 

C

A

D

D

B

D

B

B

1.串是一种特殊的线性表,其特殊性体现在:

(    )

2.A.可以顺序存储      B.数据元素是一个字符     

3.C.可以链式存储       D.数据元素可以是多个字符

4.设串s1=’ABCDEFG’,s2=’PQRST’,函数concat(x,y)返回x和y串的连接串,subs(s,i,j)返回串s的从序号i开始的j个字符组成的子串,len(s)返回串s的长度,

5.则concat(subs(s1,2,len(s2)),subs(s1,len(s2),2))的结果串是:

(   )A.BCDEF      B.BCDEFG    C.BCPQRST       D.BCDEFEF

6.设有两个串s和t,求t在s中首次出现的位置的运算称作()

7.A)连接B)模式匹配C)求子串D)求串长

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

行下标列下标值

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)仅IB)I和IIC)仅IIID)全部

9.广义表((a),a)的表头和表尾分别是()。

10.A)a,((a))B)(a),(a)C)b,(a)D)((a)),a

11.一个广义表为(a,(a,b),d,e,((i,j),k)),则该广义表的长度和深度分别是()。

12.A)5,3B)5,4C)4,3D)4,4

13. 设串sl=“DataStructureswithJava”,s2=“it”,则子串定位函数index(s1,s2,3)的值为()。

14.A.15B.16

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 经济学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1