数据结构-作业3

这篇博客探讨了线性表的相关概念,包括错误观念的纠正,如空的线性表长度为0,线性表中允许元素值相同但位置不同等。还讨论了线性表的特征,如元素个数可以为0,每个元素有前后继关系(除首尾元素),以及线性表的存储结构与元素类型的关系。同时,提到了线性表在链式存储和顺序存储结构中的优缺点,以及相关操作的时间复杂度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考教材:数据结构教程(Java语言描述)        作者:李春葆

1 . 容易 (4分)空的线性表就是所有元素尚未赋值的线性表。

错误

空的线性表就是长度为0的线性表。

2 . 容易 (4分)在一个含有n(n≥1)个元素的线性表中,所有元素值不能相同。

错误

在线性表中允许存在元素值相同的元素,但它们的位置是不同。

3 . 容易 (4分)线性表中每个元素都有一个前趋元素和一个后继元素。

错误

开始元素没有前趋元素,终端元素没有后继元素。

4 . 容易 (4分)线性表的长度是线性表占用的存储空间的大小。

错误

线性表的长度是指表中元素个数,属逻辑结构的概念,与线性表占用的存储空间大小无关。

5 . 容易 (4分)线性表的存储结构大小与线性表中元素类型有关。

正确

线性表的存储结构大小等于线性表中所有元素存储空间之和,而线性表中元素类型不同,每个元素所占用的存储空间大小也可能不同。

6 . 容易 (4分)线性表中的结点按前趋、后继关系可以排成一个线性序列。

正确

线性表是有限个相同性质的元素的序列。

7 . 容易 (4分)线性表是具有n个()的有限序列。

A. 表元素

B. 字符

C. 数据元素

D. 数据项

线性表是具有n(n≥0)个数据元素的有限序列,本题答案为C。

8 . 容易 (4分)线性表是() 。

A. 一个有限序列,可以为空

B. 一个有限序列,不可以为空

C. 一个无限序列,可以为空

D. 一个无限序列,不可以为空

线性表的定义有三点,即所有元素类型相同、元素个数有限、元素之间为线性关系(序列是指线性关系),另外线性表中元素个数可以为0,即空表。

9 . 容易 (4分)线性表有一个特点() 。

A. 至少有两个元素,即开始元素和终端元素

B. 若没有开始元素,则一定没有终端元素

C. 每个元素必须有一个前趋元素

D. 任何一个元素都还可能既是开始元素又是终端元素

线性表可以是空表,此时既没有开始元素也没有终端元素。

10 . 容易 (4分)关于线性表的正确说法是() 。

A. 每个元素都有一个前趋和一个后继元素

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

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

D. 除第一个元素和最后一个元素外,其余每个元素有且仅有一个前趋和一个后继元素

线性表属典型的线性结构。

11 . 容易 (4分)有一个非空循环双链表,在结点p之后插入结点q的操作是q.next=p.next; p.next=q; q.prior=p; ______。

A. p.next=q;

B. q.prior.next=q;

C. q.next.prior=q;

D. q.next.next=q; 

12 . 容易 (4分)在长度为n的______ 上,删除尾结点的时间复杂度为O(1)。

A. 单链表

B. 双链表

C. 循环单链表

D. 循环双链表

13 . 容易 (4分)线性表的链式存储结构与顺序存储结构相比,优点是______。

A. 所有的操作算法实现简单

B. 便于随机存取

C. 便于插入和删除元素

D. 节省存储空间

14 . 容易 (4分)线性表采用链表存储时,存放所有存放元素的结点地址______。

A. 必须是连续的

B. 一定是不连续的

C. 部分地址必须是连续的

D. 连续与否均可以

15 . 容易 (4分)单链表的存储密度______。

A. 大于1

B. 等于1

C. 小于1

D. 不能确定

16 . 容易 (4分)对于单链表存储结构,以下说法中错误的是______。

A. 一个结点的数据成员用于存放线性表的一个数据元素

B. 一个结点的指针成员用于指向下一个数据元素的结点

C. 单链表必须带有头结点

D. 单链表中所有结点可以连续也可以不连续存放

17 . 容易 (3分)链表不具备的特点是______。

A. 可随机访问任一结点

B. 插入删除不需要移动结点

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

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

18 . 容易 (3分)以下关于链表的叙述中,不正确的是______。

A. 结点中除元素值外还包括指针成员,因此存储密度小于顺序存储结构

B. 逻辑上相邻的元素物理上不必相邻

C. 可以根据头结点地址直接计算出第i个结点的地址

D. 插入、删除运算操作方便,不必移动结点

19 . 容易 (3分)若某线性表最常用的操作是查找序号i的元素和在末尾插入元素,则选择______存储结构最节省时间。

A. 顺序表

B. 带头结点的循环双链表

C. 单链表

D. 带尾结点的循环单链表

20 . 容易 (3分)将两个各有n个元素的递增有序顺序表归并成一个有序顺序表,其最少的比较次数是______。

A. n

B. 2n-1

C. 2n

D. n-1

+ 3.0 分

21 . 容易 (3分)以下关于单链表的叙述中正确的是______。 Ⅰ.结点中除元素值外还包括指针成员,存储密度小于顺序表 Ⅱ.找第i个结点的时间为O(1) Ⅲ.在插入和删除操作时不必移动结点

A. 仅Ⅰ、Ⅱ

B. 仅Ⅱ、Ⅲ

C. 仅Ⅰ、Ⅲ

D. Ⅰ、Ⅱ、Ⅲ

22 . 容易 (3分)有一个长度为n(n>1)的带头结点的单链表h,另设有尾指针r(指向尾结点),执行______ 操作与链表的长度有关。

A. 删除单链表中的首结点

B. 删除单链表中的尾结点

C. 在单链表首结点前插入一个新结点

D. 在单链表尾结点素后插入一个新结点

23 . 容易 (3分)已知一个长度为n的单链表是递增有序的,所有结点值不相同,以下叙述中正确的是______。

A. 插入一个结点使之有序的算法的时间复杂度为O(1)

B. 删除最大值结点使之有序的算法的时间复杂度为O(1)

C. 找最小值结点的算法的时间复杂度为O(1)

D. 以上都不对

24 . 容易 (3分)知两个长度分别为m 和n 的递增单链表,若将它们合并为一个长度为m+n 的递减单链表,则最好情况下的时间复杂度是______。

A. O(n)

B. O(m)

C. O(m×n)

D. O(m+n)

25 . 容易 (3分)在一个双链表中,删除p结点(非尾结点)的操作是______。

A. p.prior.next=p.next; p.next.prior=p.prior;

B. p.prior=p.prior.prior; p.prior.prior=p;

C. p.next.prior=p; p.next=p.next.next;

D. p.next=p.prior.prior; p.prior=p.prior.prior; 

26 . 容易 (3分)在长度为n(n≥1)的双链表L中,在p结点之前插入一个新结点s的时间复杂度为______。

A. O(1)

B. O(n)

C. O(n2)

D. O(nlog2n)

27 . 容易 (3分)在长度为n(n≥1)的双链表中插入一个结点p(非尾结点)要修改______个指针成员。

A. 1

B. 2

C. 3

D. 4

28 . 容易 (3分)在长度为n(n≥1)的双链表中删除一个结点p(非尾结点)要修改______个指针成员。

A. 1

B. 2

C. 3

D. 4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值