25版王道数据结构课后习题详细分析 第二章线性表 2.2线性表的顺序表示 选择题部分

一、单项选择题

————————————————————

————————————————————

解析:

正确答案:A

————————————————————

————————————————————

解析:

A:栈、队列和树等逻辑结构也可利用一维数组表示,它们与顺序表不属于相同的逻辑结构;

B:在顺序表中,逻辑上相邻的元素物理位置上也相邻;

D:顺序表是顺序存储的线性表,表中所有元素的类型必须相同,且必须连续存放。一维数组中的元素可以不连续存放。

正确答案:C

————————————————————

————————————————————

解析:存取方式是指读/写方式。顺序表是一种支持随机存取的存储结构,根据起始地址加上元素的序号,可以很方便地访问任意一个元素,这就是随机存取的概念。

正确答案:A

————————————————————

————————————————————

解析:随机存取是指在O(1)的时间访问下标为i的元素,所需时间与顺序表中的元素个数n无关。

正确答案:C

————————————————————

————————————————————

解析:顺序表所占的存储空间=表长xsizeof(元素的类型),表长和元素的类型显然会影响存储空间的大小。若元素为结构体类型,则元素中各字段的类型也会影响存储空间的大小。

正确答案:B

————————————————————

————————————————————

解析:题干实际要求能最快存取第i-1、i和i+1个元素值。选项A、B、C都只能从头结点依次顺序查找,时间复杂度为On);只有顺序表可以按序号随机存取,时间复杂度为O(1)。

正确答案:D

————————————————————

————————————————————

解析:只有顺序表可以按序号随机存取,且在最后进行插入和删除操作时不需要移动任何元素。

正确答案:A

————————————————————

————————————————————

解析:对于Ⅰ,满足条件;对于Ⅱ,在最后位置插入新结点不需要移动元素,时间复杂度为O(1);对于Ⅲ,被删结点后的结点需要依次前移,时间复杂度为O(n);对于Ⅳ,需要后移n-i个结点,时间复杂度为O(n)。

正确答案:C

————————————————————

————————————————————

解析:对于Ⅱ,顺序表只需要3次交换操作;链表则需要分别找到两个结点前驱,第4个结点断链后再插入到第2个结点后,效率较低。对于Ⅲ,需依次顺序访问每个元素,时间复杂度相同。

正确答案:C

————————————————————

————————————————————

解析:共移动n-(i+1)+1=n-i个元素。

正确答案:C

————————————————————

————————————————————

解析:在第i个位置插入一个元素,需要移动n-i+1个元素,时间复杂度为O(n)。

正确答案:C

————————————————————

————————————————————

解析:对n个元素进行排序的时间复杂度最小也要O(n)(初始有序时),通常为O(nlog2n)或O(n)。B和D显然错误。顺序表支持按序号的随机存取方式。

正确答案:C

————————————————————

————————————————————

解析:线性表元素的序号是从1开始,而在第n+1个位置插入相当于在表尾追加。

正确答案:B

————————————————————

————————————————————

解析:顺序存储需要连续的存储空间,在申请时需申请n+m个连续的存储空间,然后将线性表原来的n个元素复制到新申请的n+m个连续的存储空间的前n个单元。

正确答案:D

————————————————————

————————————————————

解析:对于顺序存储的有序表,查找指定值元素可以采用顺序查找法或折半查找法,平均时间复杂度最少为O(logn)。插入指定值元素需要先找到插入位置,然后将该位置及之后的元素依次后移一个位置,最后将指定值元素插入到该位置,平均时间复杂度为O(n)。删除第i个元素需要将该元素之后的全部元素依次前移一个位置,平均时间复杂度为O(n)。获取第i个元素只需直接根据下标读取对应的数组元素即可,时间复杂度为O(1)。

正确答案:D

王道数据结构课后习题中,有一个关于排序的题目。根据引用的思路,我们可以使用排序后查找的方法来解决这个问题。具体步骤如下: 1. 首先,对给定的数据进行排序,可以使用快速排序、归并排序等常见的排序算法进行排序。排序的时间复杂度为O(log2n)。 2. 排序完成后,我们可以使用二分查找的方法来查找特定元素。如果目标元素存在于排序后的数组中,可以通过遍历判断其是否存在。时间复杂度为O(log2n)。 所以,根据引用的思路,我们可以使用排序后查找的方法来解决王道数据结构课后习题中排序的问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [leetcode答案-kaoyan-data-structure:21考研,用的去年的书《2020王道数据结构》](https://download.csdn.net/download/weixin_38733733/19920375)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [王道数据结构课后题编程(顺序表)](https://blog.csdn.net/RHJlife/article/details/90450834)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值