线性表试题(三)——链表表示

一、单项选择题
01.关于线性表的顺序存储结构和链式存储结构的描述中,正确的是( )。
Ⅰ.线性表的顺序存储结构优于其链式存储结构
Ⅱ.链式存储结构比顺序存储结构能更方便地表示各种逻辑结构
Ⅲ.若频繁使用插入和删除结点操作,则顺序存储结构更优于链式存储结构
IV.顺序存储结构和链式存储结构都可以进行顺序存取
A.Ⅰ、Ⅱ、Ⅲ
B.Ⅱ、IV
C.Ⅱ、Ⅲ
D.Ⅲ、IV

02.对于一个线性表,既要求能进行较快速地插入和删除,又要求存储结构能反映数据之间
的逻辑关系,则应该用(  ) 。
A.顺序存储方式        B.链式存储方式        C.散列存储方式        D.以上均可以

03.链式存储设计时,结点内的存储单元地址(  ).
A.一定连续               B.一定不连续            C.不一定连续              D.部分连续,部分不连续

04.下列关于线性表说法中,正确的是()。
Ⅰ.顺序存储方式只能用于存储线性结构
Ⅱ.在一个设有头指针和尾指针的单链表中,删除表尾元素的时间复杂度与表长无关
Ⅲ.带头结点的单循环链表中不存在空指针
IV.在一个长度为n的有序单链表中插入一个新结点并仍保持有序的时间复杂度为O(n)
V.若用单链表来表示队列,则应该选用带尾指针的循环链表
A.Ⅰ、Ⅱ、                                                B.Ⅰ、Ⅲ、IV、V
C. IV、V                                                    D.Ⅲ、IV、V

05.设线性表中有2n个元素,()在单链表上实现要比在顺序表上实现效率更高。
A.删除所有值为x的元素
B.在最后一个元素的后面插入一个新元素
C.顺序输出前k个元素
D.交换第i个元素和第2n-i-1个元素的值(i=0,…, n-1 )

06、在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在q和p之间插入结点
s,则执行( ).
A. s->next=p->next ; p->next=s;                        B. p->next=s->next; s->next=p;
C. q->next=s ; s->next=p;                                  D.p->next=s;s->next=q;

07.给定有n个元素的一维数组,建立一个有序单链表的最低时间复杂度是()。
A.O(1)                        B.O(n)                        C. O(n2)                D.O(nlogzn)

08.将长度为n的单链表链接在长度为m的单链表后面,其算法的时间复杂度采用大О形
式表示应该是().
A. O(1)                        B. O(n)                      C.O(m)                  D.O(n+m)

09.单链表中,增加一个头结点的目的是().
A.使单链表至少有一个结点                             B.标识表结点中首结点的位置
C.方便运算的实现                                           D.说明单链表是线性表的链式存储

10.在一个长度为n的带头结点的单链表h上,设有尾指针r,则执行(  )操作与链表的表
长有关。
A.删除单链表中的第一个元素
B.删除单链表中的最后一个元素
C.在单链表第一个元素前插入一个新元素
D.在单链表最后一个元素后插入一个新元素

11.对于一个头指针为head 的带头结点的单链表,判定该表为空表的条件是();对于不
带头结点的单链表,判定空表的条件为().
A. head==NULL
B. head->next==NULL
C. head->next==head
D. head !=NULL

12.在线性表a0, a1,…, a100中,删除元素a50需要移动()个元素。
A.0                        B.50                        C.51                D.0或50

13.通过含有n(n>1)个元素的数组a,采用头插法建立单链表L,则L中的元素次序( )
A.与数组α的元素次序相同                                B.与数组a的元素次序相反
C.与数组a的元素次序无关                                D.以上都错误

14.下面关于线性表的一些说法中,正确的是().
A.对一个设有头指针和尾指针的单链表执行删除最后一个元素的操作与链表长度无关
B.线性表中每个元素都有一个直接前驱和一个直接后继
C.为了方便插入和删除数据,可以使用双链表存放数据
D.取线性表第i个元素的时间与i的大小有关

15.在双链表中向p所指的结点之前插入一个结点q的操作为()。
A. p->prior=q; q->next=p; p->prior->next=q; q->prior=p->prior;
B. q->prior=p->prior; p->prior->next=q; q->next=p; p->prior=q->next;
C. q->next=p; p->next=q; q->prior->next=q;q->next=p ;
D. p->prior->next=q; q->next=p; q->prior=p->prior; p->prior=q;

16.在双向链表存储结构中,删除p所指的结点时必须修改指针( ).
A. p->prior->next=p->next; p->next->prior=p->prior;
B. p->prior=p->prior->prior; p->prior->next=p;
C. p->next->prior=p; p->next=p->next->next;
D. p->next=p->prior->prior; p->prior=p->next->next;

18.在双链表的两个结点之间插入一个新结点,需要修改()个指针域。
A.1                B.3                        C.4                        D.2
19、在长度为n的有序单链表中插入一个新结点,并仍然保持有序的时间复杂度是( )。
A. O(1)                                                            B.O(n)
C.O(n)                                                             D. O(nlogn)

20.与单链表相比,双链表的优点之一是().
A.插入、删除操作更方便                                B.可以进行随机访问
C.可以省略表头指针或表尾指针                     D.访问前后相邻结点更灵活

21.对于一个带头结点的循环单链表工,判断该表为空表的条件是()。
A.头结点的指针域为空                                 B.L的值为NULL
C.头结点的指针域与工的值相等                   D.头结点的指针域与工的地址相等

22.对于一个带头结点的双循环链表工,判断该表为空表的条件是()。
A. L->prior==L&&L->next==NULL
B. L->prior==NULL& &L->next==NULL
C. L->prior==NULL&&L->next==L
D.L->prior==L& &L->next==

23.一个链表最常用的操作是在末尾插入结点和删除结点,则选用()最节省时间。
A.带头结点的双循环链表                                B.单循环链表
C.带尾指针的单循环链表                                D.单链表

24.设对n(n>1)个元素的线性表的运算只有4种:删除第一个元素;删除最后一个元素;
在第一个元素之前插入新元素;在最后一个元素之后插入新元素,则最好使用()。
A.只有尾结点指针没有头结点指针的循环单链表
B.只有尾结点指针没有头结点指针的非循环双链表
C.只有头结点指针没有尾结点指针的循环双链表
D.既有头结点指针又有尾结点指针的循环单链表

25.设有两个长度为n的循环单链表,若要求两个循环单链表的头尾相接的时间复杂度为
O(1),则对应两个循环单链表各设置一个指针,分别指向()
A.各自的头结点                                                B.各自的尾结点
C.各自的首结点                                                D.一个表的头结点,另一个表的尾结点

26.设有一个长度为n的循环单链表,若从表中删除首元结点的时间复杂度达到O(n),则
此时采用的循环单链表的结构可能是().
A.只有表头指针,没有头结点                             B.只有表尾指针,没有头结点
C.只有表尾指针,带头结点                                 D.只有表头指针,带头结点

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/444785.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

主升浪趋势票如何去做,看完这2个例子就可以终结了

我们在这个市场是否能持续赚钱不被淘汰取决于我们自身迭代速度,向市场学习本身就是向市场资金共识方向靠拢,接近客观,远离个人偏见的主观。看清这一点,你才有可能性,否则连可能性都不会有。 在上述问题中,虽…

移动端uni-app小程序搜索高亮前端处理,同时可设置相关样式,兼顾性能

在uni-app中我们会遇到搜索高亮显示的需求 如下图: 起初用的是富文本实现 使用replaceAll方法取代搜索字段为一个 标签并设置相应的样式,但是小程序的并没有把 标签渲染出来,所以放弃了,下面原代码: /* 搜索字体变色…

好书推荐丨保姆级Midjourney教程,这本写给大家看的设计书闭眼入!

文章目录 写在前面好书推荐Part.1Part.2Part.3 粉丝福利写在后面 写在前面 在AI绘画界,有每日经典一问:“你今天用Midjourney画了啥?”晒作品成为重头戏。 小红书上关于Midjourney出的图片点赞数惊人。 reddit上的恶搞幽默图片热度居高不下…

【个人开发】llama2部署实践(二)——基于GPU部署踩坑

折腾了一整天,踩了GPU加速的一堆坑,记录一下。 1.GPU加速方式 上篇已经写了llama2部署的大概流程:【【个人开发】llama2部署实践(一)】——基于CPU部署 针对llama.cpp文件内容,仅需再make的时候带上参数…

STM32之串口中断接收UART_Start_Receive_IT

网上搜索了好多,都是说主函数增加UART_Receive_IT()函数来着,实际正确的是UART_Start_Receive_IT()函数。 —————————————————— 参考时间:2024年3月9日 Cube版本:STM32CubeMX 6.8.1版本 参考芯片&#xff1a…

【蓝牙协议栈】【经典蓝牙】【BLE蓝牙】蓝牙技术特点

目录 1. 蓝牙技术特点 2. 经典蓝牙与BLE蓝牙对比 2.1 BT/BLE技术区分 2.2 支持的profile不同 2.3 核心架构,不同的controler 3. Bluetooth的系统构成 4. 蓝牙协议规范 4.1 传输协议 4.2 中介协议 4.3 应用协议 5. 蓝牙硬件接口 1. 蓝牙技术特点 简单地说…

Speech Processing (LASC11158)

大纲 PHON – phonetics and phonology 1. Phonetics and Representations of Speech2. Acoustics of Consonants and VowelsSIGNALS – signal processing, with a focus on speech signals 3. Digital Speech Signals4. the Source-Filter ModelTTS – text-to-speech synth…

大模型学习过程记录

一、基础知识 自然语言处理:能够让计算理解人类的语言。 检测计算机是否智能化的方法:图灵测试 自然语言处理相关基础点: 基础点1——词表示问题: 1、词表示:把自然语言中最基本的语言单位——词,将它转…

js 日期格式化代码

js 日期格式化代码 分享一个前端实用的 js 日期格式化代码&#xff0c;相当给力。 export function getFillDate(key) {if(key < 10) {return 0${key};}else{return ${key};} } /*** 时间戳转化为年月日* param times 时间戳* param ymd 格式类型(yyyy-mm-dd,yyyy/mm/dd)*…

Igraph入门指南 4

二、图的创建 图分有向图和无向图&#xff0c;所以图的创建有各自的实现方式。 1、手工创建图&#xff1a; 1-1 通过文本创建&#xff1a;graph_from_literal 通过每项提供两个顶点名&#xff08;或ID号&#xff09;作为一条边的格式&#xff0c;手动创建图&#xff0c;顶点…

Docker之自定义镜像上传阿里云

目录 一、制作jdk镜像 1. alpine Linux简介 2. 通过alpine进行制作镜像 1. 制作jdk2.0 2. 制作jdk3.0 二、镜像上传阿里云及下载 1. 前期准备 2. push (推) 镜像 一、制作jdk镜像 1. alpine Linux简介 Alpine Linux是一个轻量级的Linux发行版&#xff0c;专注于安全、…

Spring web开发(入门)

1、我们在执行程序时&#xff0c;运行的需要是这个界面 2、简单的web接口&#xff08;127.0.0.1表示本机IP&#xff09; package com.example.demo;import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestCont…

【小白学机器学习7】相关系数R,决定系数R2和SST=SSR+SSE, 离差,偏差,方差,标准差,变异系数,标准误。

目录 1 各种数据指标&#xff0c;分类整理 1.0 关于数据/值有3种 1.1 第1类&#xff1a;描述一堆数据特征的指标&#xff1a;集中度&#xff0c;离散度&#xff0c;形状特征 1.2 第2类&#xff1a;判断预测y值和观测值差距的指标 1.3 第3类&#xff1a;描述误差的各种指标…

微信小程序onLoad加载定义好的函数

这里小程序开发中容易犯的错误-1 给客户做一个程序。需要在页面加载的时候在onLoad(options){}中加载定义好的函数&#xff0c;代码如下 onLoad(options) {get_week_()},运行时老报错 后来修改为正确的代码 onLoad(options) {this.get_week_()//必须加this},再尝试运行&#x…

这是一段神奇的提示词,能直接调取Claude 3的系统提示词!附详细解读

大家好&#xff0c;我是木易&#xff0c;一个持续关注AI领域的互联网技术产品经理&#xff0c;国内Top2本科&#xff0c;美国Top10 CS研究生&#xff0c;MBA。我坚信AI是普通人变强的“外挂”&#xff0c;所以创建了“AI信息Gap”这个公众号&#xff0c;专注于分享AI全维度知识…

数字化审计智慧

简析内部审计数字化转型的方法和路径 内部审计是一种独立的、客观的确认和咨询活动&#xff0c;包括鉴证、识别和分析问题以及提供管理建议和解决方案。狭义的数字化转型是指将企业经营管理和业务操作的各种行为、状态和结果用数字的形式来记录和存储&#xff0c;据此再对数据进…

BPSK调制解调

BPSK数字调制是相移键控PSK的一种&#xff0c;通过数字信号&#xff0c;调制载波的相位&#xff0c;利用载波的相位变化来反映数字信号&#xff0c;载波的振幅和频率均不变化。PSK应用很广泛&#xff0c;抗噪声性能比ASK和FSK要好&#xff0c;频带利用率较高。BPSK中&#xff0…

通过Electron打包前端项目为exe

&#x1f9d1;‍&#x1f393; 个人主页&#xff1a;爱蹦跶的大A阿 &#x1f525;当前正在更新专栏&#xff1a;《JavaScript保姆级教程》、《VUE》、《Krpano》 ✨ 正文 1、 拉取electron官网上的demo&#xff0c;拉下来之后安装依赖&#xff0c;项目跑起来之后&#xff0c;就…

C++ 函数提高

3.1函数默认参数&#xff08;缺省&#xff09; 3.2函数占位参数 3.3.1函数重载 3.3.2函数重载的注意事项

区块链和人工智能的关系以及经典案例

目录 1.区块链与人工智能的关系 2.应用案例&#xff1a;基于区块链的医疗数据共享平台 2.1背景 2.2方案 2.3优势 2.4挑战 区块链技术和人工智能&#xff08;AI&#xff09;是两种不同的技术&#xff0c;但它们之间存在着互补关系。区块链技术提供了一种安全、透明、去中心…