数据结构练习题及答案Word格式文档下载.doc

上传人:聆听****声音 文档编号:420828 上传时间:2023-04-28 格式:DOC 页数:46 大小:780.50KB
下载 相关 举报
数据结构练习题及答案Word格式文档下载.doc_第1页
第1页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第2页
第2页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第3页
第3页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第4页
第4页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第5页
第5页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第6页
第6页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第7页
第7页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第8页
第8页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第9页
第9页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第10页
第10页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第11页
第11页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第12页
第12页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第13页
第13页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第14页
第14页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第15页
第15页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第16页
第16页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第17页
第17页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第18页
第18页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第19页
第19页 / 共46页
数据结构练习题及答案Word格式文档下载.doc_第20页
第20页 / 共46页
亲,该文档总共46页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数据结构练习题及答案Word格式文档下载.doc

《数据结构练习题及答案Word格式文档下载.doc》由会员分享,可在线阅读,更多相关《数据结构练习题及答案Word格式文档下载.doc(46页珍藏版)》请在冰点文库上搜索。

数据结构练习题及答案Word格式文档下载.doc

6.在图形结构中,每个结点的前驱结点数和后继结点数可以任意多个。

7.数据的存储结构又叫物理结构。

8.数据的存储结构形式包括顺序存储、链式存储、索引存储和散列存储。

9.线性结构中的元素之间存在一对一的关系。

10.树形结构中的元素之间存在一对多的关系。

11.图形结构的元素之间存在多对多的关系。

12.数据结构主要研究数据的逻辑结构、存储结构和算法(或运算)3个方面的内容。

13.数据结构被定义为(D,R),其中D是数据的有限集合,R是D上的关系有限集合。

14.算法是一个有穷指令的集合。

15.算法效率的度量可以分为事先估算法和事后统计法。

16.一个算法的时间复杂度是算法输入规模的函数。

17.算法的空间复杂度是指该算法所耗费的存储空间,它是该算法求解问题规模的n的函数。

18.若一个算法中的语句频度之和为T(n)=6n+3nlog2n,则算法的时间复杂度为O(nlog2n)。

19.若一个算法的语句频度之和为T(n)=3n+nlog2+n2,则算法的时间复杂度为O(n2)。

20.数据结构是一门研究非数值计算的程序问题中计算机的操作对象,以及它们之间的关系和运算的学科。

三、选择题

1.数据结构通常是研究数据的(A)及它们之间的相互关系。

A.存储结构和逻辑结构B.存储和抽象C.联系和抽象D.联系与逻辑

2.在逻辑上可以把数据结构分成(C)。

A.动态结构和静态结构B.紧凑结构和非紧凑结构

C.线性结构和非线性结构D.内部结构和外部结构。

3.数据在计算机存储内表示时,物理地址和逻辑地址相同并且是连续的,称之为(C)。

A.存储结构B.逻辑结构C.顺序存储结构D.链式存储结构

4.非线性结构中的每个结点(D)。

A.无直接前驱结点.B.无直接后继结点.

C.只有一个直接前驱结点和一个直接后继结点D.可能有多个直接前驱结点和多个直接后继结点

5.链式存储结构所占存储空间(A)。

A.分两部分,一部分存放结点的值,另一个部分存放表示结点间关系的指针。

B.只有一部分,存放结点的值。

C.只有一部分,存储表示结点间关系的指针。

D.分两部分,一部分存放结点的值,另一部分存放结点所占单元素

6.算法的计算量大小称为算法的(C)。

A.现实性B.难度C.时间复杂性D.效率

7.数据的基本单位(B)。

A.数据结构B.数据元素C.数据项D.文件

8.每个结点只含有一个数据元素,所有存储结点相继存放在一个连续的存储空间里,这种存储结构称为(A)结构。

A.顺序结构B.链式结构C.索引结构D.散列结构

9.每一个存储结点不仅含有一个数据元素,还包含一组指针,该存储方式是(B)。

A.顺序B.链式C.索引D.散列

10.以下任何两个结点之间都没有逻辑关系的是(D)。

A.图形结构B.线性结构C.树形结构D.集合

11.在数据结构中,与所使用的计算机无关的是(C)。

A.物理结构B.存储结构C.逻辑结构D.逻辑和存储结构

12.下列4种基本逻辑结构中,数据元素之间关系最弱的是(A)。

A.集合B.线性结构C.树形结构D.图形结构

13.与数据元素本身的形式、内容、相对位置、个数无关的是数据的(A)。

A.逻辑结构B.存储结构C.逻辑实现D.存储实现

14.每一个存储结点只含有一个数据元素,存储结点存放在连续的存储空间,另外有一组指明结点存储位置的表,该存储方式是(C)存储方式。

A.顺序B.链式C.索引D.散列

15.算法能正确的实现预定功能的特性称为算法的(A)。

A.正确性B.易读性C.健壮性D.高效性

16.算法在发生非法操作时可以作出相应处理的特性称为算法的(C)。

17.下列时间复杂度中最坏的是(D)。

A.O

(1)B.O(n)C.O(log2n)D.O(n2)

18.下列算法的时间复杂度是(D)。

for(i=0;

i<

n;

i++)

for(j=o;

j++)

c[i][j]=i+j;

A.O

(1)B.O(n)C.(log2n)D.O(n2)

19.算法分析的两个主要方面是(A)。

A.空间复杂性和时间复杂性B.正确性和简明性

C.可读性和文档性D.数据复杂性和程序复杂性

20.计算机算法必须具备输入、输出和(C)。

A.计算方法B.排序方法C.解决问题的有限运算步骤D.程序设计方法

第2章线性表

一、判断题

1.线性表的链式存储结构优于顺序存储。

(×

2.链表的每个结点都恰好包含一个指针域。

(×

3.在线性表的链式存储结构中,逻辑上相邻的两个元素在物理位置上并不一定紧邻。

(√)

4.顺序存储方式的优点是存储密度大,插入、删除效率高。

(×

5.线性链表的删除算法简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向前移动。

(×

6.顺序表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。

(×

7.线性表链式存储的特点是可以用一组任意的存储单元存储表中的数据元素。

(√)

8.线性表采用顺序存储,必须占用一片连续的存储单元。

(√)

9.顺序表结构适宜进行顺序存取,而链表适宜进行随机存取。

(×

10.插入和删除操作是数据结构中是最基本的两种操作,所以这两种操作在数组中也经常使用。

(×

1.顺序表中逻辑上相邻的元素在物理位置上必须相邻。

2.线性表中结点的集合是有限的,结点间的关系是一对一关系。

3.顺序表相对于链表的优点是节省存储和随机存取。

4.链表相对于顺序表的优点是插入、删除方便。

5.当线性表的元素总数基本稳定,且很少进行插入和删除操作,但要求以最快速度存取线性表中的元素时,应采用顺序存储结构。

6.顺序表中访问任意一个结点的时间复杂度均为O

(1)。

7.链表相对于顺序表的优点是插入、删除方便;

缺点是存储密度小。

8.在双向链表中要删除已知结点*P,其时间复杂度为O

(1)。

9.在单向链表中要在已知结点*P之前插入一个新结点,需找到*P的直接前驱结点的地址,其查找的时间复杂度为O(n)。

10.在单向链表中需知道头指针才能遍历整个链表。

11.线性表中第一个结点没有直接前驱,称为开始结点。

12.在一个长度为n的顺序表中删除第i个元素,要移动n-i个元素。

13.在一个长度为n的顺序表中,如果要在第i个元素前插入一个元素,要后移n-i+1个元素。

14.在无头结点的单向链表中,第一个结点的地址存放在头指针中,而其他结点的存储地址存放在

前趋结点的指针域中。

15.线性表的元素总数不确定,且经常需要进行插入和删除操作,应采用链子存储结构。

16.在线性表中的链式存储中,元素之间的逻辑关系是通过指针决定。

17.在双向链表中,每个结点都有两个指针域,它们一个指向其前趋结点,另一个指向其后继结点。

18.对一个需要经常进行插入和删除操作的线性表,采用链式存储结构为宜。

19.双向链表中,设P是指向其中待删除的结点,则需要执行的操作为p->

prior->

next=p->

next;

p->

next->

prior=p->

prior

20.在如图所示的链表中,若在指针P所在的结点之后插入数据域值为a和b的两个结点,则可用语句S->

next和P->

next=S;

来实现该操作。

p

ab

s

三、选择题

1.在具有n个结点的单向链表中,实现(A)的操作,其算法的时间复杂度都是O(n).

A.遍历链表或求链表的第i个结点B.在地址为P的结点之后插入一个结点

C.删除开始结点D.删除地址为P的结点的后继结点

2.设a、b、c为3个结点,p、10、20分别代表它们的地址,则如下的存储结构称为(B)。

pa10b20c∧

A.循环链表B.单向链表C.双向循环链表D.双向链表

3.单向链表的存储密度(C)。

A.大于1B.等于1C.小于1D.不能确定

4.已知一个顺序存储的线性表,设每个结点占m个存储单元,若第一个结点的地址为B,则第i个结点的地址为(A)。

A.B+(i-1)×

mB.B+i×

mC.B-i×

mD.B+(i+1)×

m

5.在有n个结点的顺序表上做插入、删除结点运算的时间复杂度为(B)。

A.O

(1)B.O(n)C.O(n2)D.O(log2n)

6.设front、rear分别为循环双向链表结点的左指针和右指针,则指针P所指的元素是双循环链表L的尾元素的条件是(D)。

A.P==LB.P->

front==LC.P==NULLD.P->

rear==L

7.两个指针P和Q,分别指向单向链表的两个元素,P所指元素是Q所指元素前驱的条件是(B)

A.P->

next==Q->

nextB.P->

next==QC.Q->

next==PD.P==Q

8.用链表存储的线性表,其优点是(C)。

A.便于随机存取B.花费的存储空间比顺序表少

C.便于插入和删除D.数据元素的物理顺序与逻辑顺序相同

9.在单链表中,增加头结点的目的是(C)。

A.使单链表至少有一个结点B.标志表中首结点的位置

C.方便运算的实现D.说明该单链表是线性表的链式存储结构

10.下面关于线性表的叙述中,错误的是(D)关系。

A.顺序表必须占一片地址连续的存储单元B.顺序表可以随机存取任一元素

C.链表不必占用一片地址连续的存储单元D.链表可以随机存取任一元素

11.L是线性表,已知LengthList(L)的值是5,经DelList(L,2)运算后,LengthList(L)的值是(C)。

A.2B.3C.4D.5

12.单向链表的示意图如下:

L

ABCD∧

PQR

指向链表Q结点的前驱的指针是(B)。

A.LB.PC.QD.R

13.设p为指向单循环链表上某结点的指针,则*p的直接前驱(C)。

A.找不到B.查找时间复杂度为O

(1)

C.查找时间复杂度为O(n)D.查找结点的次数约为n

14.等概率情况下,在有n个结点的顺序表上做插入结点运算,需平均移动结点的数目为(8)。

A.nB.(n-1)/2C.n/2D.(n+1)/2

15.在下列链表中不能从当前结点出发访问到其余各结点的是(C)。

A.双向链表B.单循环链表C.单向链表D.双向循环链表

16.在顺序表中,只要知道(D),就可以求出任一结点的存储地址。

A.基地址B.结点大小C.向量大小D.基地址和结点大小

17.在双向链表中做插入运算的时间复杂度为(A)。

A.O

(1)B.O(n)C.O(n2)D.O(log2n)

18.链表不具备的特点是(A)。

A.随机访问B.不必事先估计存储空间C.插入删除时不需要移动元素D.所需空间与线性表成正比

19.以下关于线性表的论述,不正确的为(C)。

A.线性表中的元素可以是数字、字符、记录等不同类型B.线性顺序表中包含的元素个数不是任意的

C.线性表中的每个结点都有且仅有一个直接前驱和一个直接后继

D.存在这样的线性表,即表中没有任何结点

20.在(B)的运算中,使用顺序表比链表好。

A.插入B.根据序号查找C.删除D.根据元素查找

第3章栈

1.栈是运算受限制的线性表。

(√)

2.在栈空的情况下,不能作出栈操作,否则产生下溢。

(√)

3.栈一定是顺序存储的线性结构。

(×

4.栈的特点是“后进先出”。

(√)

5.空栈就是所有元素都为0的栈。

6.在C(或C++)语言中设顺序栈的长度为MAXLEN,则top=MAXLEN时表示栈满。

(×

7.链栈与顺序栈相比,其特点之一是通常不会出现栈满的情况。

(√)

8.一个栈的输入序列为:

A,B,C,D,可以得到输出序列:

C,A,B,D。

(×

9.递归定义就是循环定义。

(×

10.将十进制数转换为二进制数是栈的典型应用之一。

(√)

1.在栈结构中,允许插入、删除的一端称为栈顶。

2.在顺序栈中,当栈顶指针top=-1时,表示栈空。

3.在有n个元素的栈中,进栈操作时间复杂度为O

(1)。

4.在栈中,出栈操作时间复杂度为O

(1)。

5.已知表达式,求它的后缀表达式是栈的典型应用。

6.在一个链栈中,若栈顶指针等于NULL,则表示栈空。

7.向一个栈顶指针为top的链栈插入一个新结点*p时,应执行p->

next=top;

top=p;

操作。

8.顺序栈S存储在数组S->

data[0…MAXLEN-1]中,进栈操作时要执行的语句有:

S->

top++。

(或S->

top+1)

data[S->

top]=x

9.链栈LS,指向栈顶元素的指针是LS->

next。

10.从一个栈删除元素时,首先取出栈顶元素,然后再移动栈顶指针。

11.由于链栈的操作只在链表的头部进行,所以没有必要设置头结点。

12.已知顺序栈S,在对S进栈操作之前首先要判断栈是否满。

13.已知顺序栈S,在对S出栈操作之前首先要判断栈是否空。

14.若内在空间充足,链栈可以不定义栈满运算。

15.链栈LS为空的条件是LS->

next=NULL。

16.链栈LS的栈顶元素是链表的首元素。

17.同一栈的各元素的类型相同。

18.若进栈的次序是A、B、C、D、E,执行3次出栈操作以后,栈顶元素为B。

19.A+B/C-D*E的后缀表达式是ABC/+DE*-。

20.4个元素A、B、C、D顺序进S栈,执行两次Pop(S,x)运算后,x的值是C。

1.插入和删除操作只能在一端进行的线性表,称为(C)。

A.队列B.循环队列C.栈D.循环栈

2.设有编号为1,2。

3,4的4辆列车,顺序进入一个栈结构的站台,下列不可能的出站顺序为(D)。

A.1234B.1243C.1324D.1423

3.如果以链表作为栈的存储结构,则出栈操作时(B)。

A.必须判别栈是否满B.必须判别栈是否为空C.必须判别栈元素类型D.栈可不做任何判别

4.元素A、B、C、D依次进栈以后,栈顶元素是(D)

A.AB.BC.CD.D

5.顺序栈存储空间的实现使用(B)存储元素。

A.链表B.数组C.循环链表D.变量

6.在C(或C++)语言中,一个顺序栈一旦被声明,其占用空间的大小(A)。

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

7.带头结点的链栈LS的示意图如下,栈顶元素是(A)。

LS

HABCD∧

A.AB.BC.CD.D

8.链栈与顺序栈相比,有一个比较明显的优点是(B)。

A.插入操作更加方便B.通常不会出现栈满的情况C.不会出现栈空的情况D.删

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

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2