0126 线性表

news2024/9/20 18:47:56

目录

2.线性表

2.1线性表的定义和基本概念

2.1部分习题

2.2线性表的顺序表示

2.2部分习题

2.3线性表的链式表示

2.3部分习题


2.线性表

2.1线性表的定义和基本概念


2.1部分习题

1.线性表是具有n个()的有限序列

A.数据表        B.字符        C.数据元素        D.数据项

2.以下()是一个线性表

A.由n个实数组成的集合        B.由100个字符组成的序列        C.所有整数组成的序列        D.邻接表

1.C        2.B

线性表由具有相同数据类型的有限数据元素组成。


2.2线性表的顺序表示

 

 

 


2.2部分习题

1.在n个元素的线性表的数组表示中,时间复杂度为O(1)的操作是()

A.访问第i(0<=i<=n)个结点和求第i(2<=i<=n)个结点的直接前驱

B.在最后一个结点后插入一个新的结点

C.删除第一个结点

D.在第i(0<=i<=n)个结点后插入一个结点

2.设线性表有n个元素,()在顺序表实现比在链表实现的效率高

A.输出第i(0<=i<=n)个元素值

B.交换第3个元素和第4个元素的值

C.顺序输出这n个元素的值

1.AB

C中删除结点后,其余结点依次前移,D中需要后移n-i个结点,二者时间复杂度都为O(n)

2.AB

C中都需依次顺序访问每个元素,时间复杂度相同


2.3线性表的链式表示

 

 

 

 

 

 ​​​​​​

 

 

 


2.3部分习题

1.给定有n个元素的一维数组,建立一个有序单链表的最低时间复杂度是()

A.O(1)        B.O(n)        C.O(n^{2})        D.O(nlog_{2}n)

2.将长度为n的单链表链接在长度为m的单链表后,其算法的时间复杂度是()

A.O(1)        B.O(n)        C.O(m)        D.O(n+m)

3.在一个长度为n的带头结点的单链表h上,设有尾指针r,则执行()操作与链表的表长有关

A.删除单链表中的第一个元素

B.删除单链表中的最后一个元素

C.在单链表第一个元素前插入一个新元素

D.在单链表最后一个元素后插入一个新元素

4.一个链表最常用的操作是在末尾插入结点和删除结点,选用()更好

A.带头结点的双循环链表        B.单循环链表        C.带尾指针的单循环链表        D.单链表

5.设对n(n>1)个元素的线性表运算有:删除第一个元素;删除最后一个元素;在第一个元素之前插入一个新元素;在最后一个元素之后插入新元素,最好使用()

A.只有尾结点指针没有头结点指针的循环单链表

B.只有尾结点指针没有头结点指针的非循环双链表

C.只有头结点指针没有尾结点指针的循环双链表

D.既有头结点指针又有尾结点指针的循环单链表

1.D

若先建立链表,一次插入建立有序表,则每插入一个元素就遍历链表寻找位置,时间复杂度为O(n^{2})。若先将数组排好序,然后建立链表,建立链表时间复杂度为O(n),数组排序最好时间复杂度为O(nlog_{2}n

2.C

先遍历长度为m的链表,找到其尾结点,将其next域指向另一个链表的首结点

3.B

删除最后一个结点,需置其前驱结点指针域为null,需要从头开始遍历找到该结点

4.A

需要修改其相邻节点的指针域,寻找尾结点及尾结点前驱结点时,只有带头结点的双循环链表所需时间更少

5.C

C执行这四种运算,时间复杂度为O(1);A中删除尾结点时,需找到前一个结点,复杂度为O(n);B中删除首结点时,需通过尾结点的prior指针找到首结点,时间复杂度为O(n);D中删除尾结点时,需要找到前一个结点,时间复杂度为O(n)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

FPGA纯verilog实现UDP协议栈,sgmii接口SFP光口收发,提供工程源码和技术支持

目录 1、前言2、我这里已有的UDP方案3、该UDP协议栈性能4、详细设计方案SFPGMII AXIS接口模块AXIS FIFOUDP协议栈1G/2.5G Ethernet PCS/PMA or SGMII 5、vivado工程1-->B50610 工程6、上板调试验证并演示准备工作查看ARPUDP数据回环测试 7、福利&#xff1a;工程代码的获取 …

c++日程管理系统

一.需求分析 多功能日历&#xff08;要求有简单ui&#xff09; 要求&#xff1a; 1.使用c代码用visual stdio运行 2.用户登录注册 3.登录后给用户三大功能选择&#xff1a; &#xff08;1&#xff09;基本日历&#xff1a;显示日历,默认六月&#xff0c;每日有对应的日程 &…

开源防病毒引擎ClamAV

本文软件是应网友 Windows 的要求折腾的&#xff1b; 什么是 ClamAV &#xff1f; ClamAV 是一个开源 ( GPLv2 ) 反病毒工具包&#xff0c;专为邮件网关上的电子邮件扫描而设计。它提供了许多实用程序&#xff0c;包括灵活且可扩展的多线程守护程序、命令行扫描程序和用于自动数…

尚硅谷Docker实战教程-笔记09【高级篇,DockerFile解析】

尚硅谷大数据技术-教程-学习路线-笔记汇总表【课程资料下载】视频地址&#xff1a;尚硅谷Docker实战教程&#xff08;docker教程天花板&#xff09;_哔哩哔哩_bilibili 尚硅谷Docker实战教程-笔记01【基础篇&#xff0c;Docker理念简介、官网介绍、平台入门图解、平台架构图解】…

LSTM介绍

LSTM ft表示 遗忘门。LSTM对于每一次的输入,首先决定遗忘掉之前的哪些记忆。将ft和t-1时刻的细胞状态相乘,得出将遗忘哪些记忆。 记忆门 是用来控制是否将t时刻的数据并入细胞状态。tanh函数可以将此刻向量中的有效信息提取出来,为gt。sigmoid函数用于控制此刻多少记忆进入…

阿里云ACE认证和华为云HCIE认证对比分析

最近有不少小伙伴私信问我&#xff0c;阿里云、腾讯云、华为云这几大厂商的云认证&#xff0c;哪一个更好&#xff0c;今天有空来跟大家认真地分析一下。 01-从云计算市场占有率来看 作为国内云计算市场的探路人&#xff0c;阿里虽然一路走来有过很多坎坷&#xff0c;但也不负…

Linux系统优化策略

Linux系统优化策略 1.禁用不需要的服务 在Linux系统中禁用不需要的服务可以通过以下步骤进行&#xff1a; 使用以下命令查看当前正在运行的服务&#xff1a; systemctl list-unit-files --typeservice根据需要禁用特定的服务&#xff0c;使用以下命令&#xff1a; systemctl …

【LeetCode周赛】2022上半年题目精选集——双指针

文章目录 2271. 毯子覆盖的最多白色砖块数思路代码 2302. 统计得分小于 K 的子数组数目代码1——前缀和滑动窗口代码2——双指针 O ( 1 ) O(1) O(1)空间 &#xff08;代码1的优化&#xff09; https://leetcode.cn/circle/discuss/G0n5iY/ 2271. 毯子覆盖的最多白色砖块数 22…

Win10安全中心怎么关闭?Win10安全中心关闭方法

Win10安全中心怎么关闭&#xff1f;关闭Win10的安全中心可以帮助用户自定义系统的安全和防护设置&#xff0c;但有些用户不知道怎么操作才能关闭安全中心&#xff0c;首先用户需要打开Win10电脑的设置选项&#xff0c;接着打开安全中心&#xff0c;然后关掉安全中心的实时保护、…

STM32CubeMX使用示例---生成LED闪烁工程

这里记录一下通过STM32CubeMX配置STM32G030C8T6&#xff0c;生成LED闪烁的示例工程的过程&#xff0c;用来学习使用STM32CubeMX&#xff1b; 以STM32G030C8T6 PB4 脚做LED 输出闪烁为例&#xff0c;外部8MHZ 晶振,系统主频64MHZ,LED 灯1 秒钟闪烁一次做一个示例程序。 文章目录…

Go语言程序设计(八)数据输入输出

Go语言提供了多种用于实现数据输入、输出的函数,这些函数在fmt包中实现。在输入、输出数据时,首先要导入fmt包,导入语句为: import "fmt" 一、标准输出函数 数据输出(Data Output),是计算机对各类输入数据进行加工处理后,将结果以用户所要求的形式输出到标准输出设…

OpenCV使用`clone()`函数来进行深度拷贝,拷贝后的`image_clone`修改不会影响原始图像`image`

这是完整的代码: #include <opencv2/opencv.hpp>int main() {// 创建一个白色的图像cv::Mat image(500, 500, CV_8UC3, cv

SpringCloud微服务(三)RabbitMQ、SpringAMQP、elasticsearch、DSL、MQ、ES详细介绍

目录 一、初始MQ 同步调用 异步调用 什么是MQ 执行下面的命令来运行MQ容器&#xff1a; 如果冲突了&#xff0c;可以先查询 RabbitMQ概述 常见消息模型 HelloWorld案例 二、SpringAMQP 引入依赖 Work Queue 消费预取限制 ​编辑 发布、订阅 发布订阅Fanout Ex…

作物计数方法之合并信息生成json标签的方法

在研究农情的方向中&#xff0c;作物计数是一个很重要的方向&#xff0c;前文已经提到了一些要使用的方法 前文链接&#xff1a;作物计数方法汇总_追忆苔上雪的博客-CSDN博客 在研究计数过程中&#xff0c;还需要将上文处理过的数据信息存入json文件方便后续使用&#xff0c;这…

Array.from详解

德玛玩前端 2023-07-07 在以往的开发中&#xff0c;对于Array.from的了解是from是Array的静态方法&#xff0c;可以将类数组和迭代对象转换为数组&#xff0c;可以结合Set集合快速实现数组的去重&#xff0c;一直以为Array,from()只有一个参数&#xff0c;不是传类数组就是可迭…

idea打包项目时报错 There are test failures

出现这个错误时要点击跳过测试类的按钮&#xff0c;图中的这个圆圈&#xff0c;可以看到test已经被划掉了 再点击package打包&#xff0c;成功。

启航RK3588边缘计算之旅:保定飞凌OK3588开发板

启航RK3588边缘计算之旅&#xff1a;保定飞凌OK3588开发板 引言&#xff1a; 随着人工智能技术的飞速发展&#xff0c;人们对于能够提供高性能和灵活性的智能设备有着极大的需求。作为人工智能领域的先锋企业&#xff0c;保定飞凌公司在设计和生产高性能处理器方面取得了卓越的…

在服务器从零开始配置conda、pytorch、cv2

疯掉了 希望是最后一次 0.配置WinSCP和PUTTY 在Windows上使用PuTTY进行SSH连接-腾讯云开发者社区-腾讯云 1.配置conda 如何在Linux服务器上安装Anaconda&#xff08;超详细&#xff09;_linux安装anaconda_流年若逝的博客-CSDN博客 实验室远程登录Linux服务器并配置环境_远…

Linux性能优化实践——平均负载

平均负载&#xff08;Load Average&#xff09; 当我们输入uptime命令时&#xff0c; 这里有几个参数&#xff0c;解释如下 0:54 &#xff1a;当前时间&#xff1b;up 50 mins&#xff1a;系统运行时间&#xff1b;2 users&#xff1a;正在登录用户数&#xff1b;load avera…

活动回顾| 萌啦科技亮相第三届东南亚大会,用数据赋能助力东南亚出海新机遇!

“聚焦深耕”资源对接 6月30日&#xff0c;由DNY123东南亚卖家导航主办的聚焦深耕——第三届东南亚电商本地化&品牌资源对接会在深圳圆满结束。 本次对接会以"聚焦深耕"为主题&#xff0c;旨在推动东南亚电商业务的本地化发展&#xff0c;并促进品牌资源的互通与…