数据结构练习题--2011级--参考答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

选择题:

1.1数据结构在计算机内存中的表示是指:

A.数据的存储结构 B.数据结构

C.数据的逻辑结构 D.数据元素之间的关系

1.2数据的逻辑结构是指:

A. 数据所占的存储空间量

B.各数据元素之间的逻辑关系

C. 数据在计算机中顺序或链接的存储方式

D. 存储在内存或外存中的数据

1.3在下列的叙述中,正确的是:

A.数据的逻辑结构是指数据的各数据项之间的逻辑关系。

B.数据的物理结构是指数据在计算机内的实际存储形式。

C.在顺序存储结构中,数据元素之间的关系是显示体现的。

D.链接存储结构是通过结点的存储位置相邻来体现数据元素之间的关系。

填空题:

1.4

内容。

1.5

1.6

1.7

1.8表示关系。

1.9

1.10

简答题:

1.11数据结构研究的三方面内容之间有什么联系和区别?

数据结构研究的三方面内容包括: 数据的逻辑结构、存储结构和运算。数据的逻辑结构是数学模型,存储结构是指逻辑结构到存储区域的映射,运算是定义在逻辑结构上,实现在存储结构上。

1.12简述数据结构中讨论的三种经典结构的逻辑特征是什么?

三种经典结构:线性表、树和图。逻辑特征分别为:

(1)线性表:一对一。有且仅有一个开始结点和一个终端结点,其余的内部结点都有且仅有一个前趋结点和一个后继结点。

(2)树:一对多。有且仅有一个开始结点,可有若干个终端结点,其余的内部结点都有且仅有一个前趋结点,可以有若干个后继结点。

(3)图:多对多。可有若干个开始结点和终端结点,其余的内部结点可以有若干个前趋结点和若干个后继结点。

1.13简述各种常用存储方法的基本思想。

各种方法的基本思想:

顺序存储:逻辑上相邻的数据元素存储在物理位置上相邻的存储单元里。

链接存储:通过附加指针域表示数据元素之间的关系。

索引存储:除了存储数据元素,还要建立附加的索引表来标识数据元素的地址。

散列存储:根据关键字直接计算出该结点的存储地址,通常称为关键字-地址转换法。

选择题:

2.1线性表L=(a1,a2,…,a n),下列说法正确的是:

A. 每个元素都有一个直接前驱和一个直接后继。

B. 线性表中至少有一个元素。

C. 表中元素的排列顺序必须是由小到大或由大到小。

D. 除第一个和最后一个元素外,其余每个元素都有且仅有一个直接前驱和一个直接后继。

2.2下面关于线性表的叙述中,错误的是:

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

B.线性表若采用顺序存储,便于进行插入和删除操作

C.线性表若采用链接存储,不必占用一片连续的存储单元

D.线性表若采用链接存储,便于插入和删除操作

2.3在长度为n的顺序表的第i(1≤i≤n+1)个位置上插入一个元素,元素的移动次数为:

A .n-i+1

B .n-i

C .i

D .i-1

2.4删除长度为n的顺序表中的第i(1≤i≤n)个位置上的元素,元素的移动次数为:

A. n-i+1

B. n-i

C. i

D. i-1

2.5已知一个带头结点单链表L,在表头元素前插入新结点*s的语句为:

A. L=s; s->next=L;

B. s->next=L->next; L->next=s;

C. s=L; s->next=L;

D. s->next=L; s=L;

2.6已知一个不带头结点单链表的头指针为L,则在表头元素之前插入一个新结点*s的语句为:

A. L=s; s->next=L;

B. s->next=L; L=s;

C. s=L; s->next=L;

D. s->next=L; s=L;

2.7已知单链表上一结点的指针为p,则在该结点之后插入新结点*s的正确操作语句为:

A.p->next=s; s->next=p->next; B.s->next=p->next; p->next=s;

C.p->next=s; p->next=s->next; D.p->next=s->next; p->next=s;

2.8已知单链表上一结点的指针为p,则删除该结点后继的正确操作语句是:

A.s= p->next; p=p->next; free(s); B.p=p->next; free(p);

C.s= p->next; p->next=s->next; free(s); D.p=p->next; free(p->next);

2.9设一个链表最常用的操作是在表尾插入结点和在表头删除结点,则选用下列哪种存储结构效率最高?

A. 单链表

B. 双链表

C. 单循环链表

D. 带尾指针的单循环链表

2.10线性表的链接存储结构是一种()存储结构。

A. 随机存取

B. 顺序存取

C. 索引存取

D. 散列存取

2.11链表不具备的特点是:

A. 插入删除不需要移动元素

B. 不必事先估计存储空间

C. 可随机访问任一结点

D. 所需空间与其长度成正比

填空题:

2.1在单链表L中,指针p

2.2判断带头结点的单链表L

2.12

2.13对于一个具有n个结点的单链表,已知一个结点的指针p,在其后插入一个新结点的时间复杂度为

x

2.14

相关文档
最新文档