数据结构笔记1 绪论,线性表

news2024/11/16 15:51:11

学习视频:

第01周c--1.2基本概念和术语1_哔哩哔哩_bilibili

01《数据结构》绪论_哔哩哔哩_bilibili

数据:

1.数值型的数据:整数,实数

2.非数值型的数据:文字、图像..

数据元素:(元素,记录,结点,顶点)

 数据项:构成数据元素的不可分割的最小单位

数据对象:性质相同的数据元素的集合,是数据的一个子集

 

不能只说是一个值的集合

空间复杂度:取次数最高那项,且不取其系数

线性表可以为空表

线性表的顺序实现:

 1.线性表中的位序是从1开始的,而数组中元素的下标是从0开始的

2.按位置访问:随机存取,通过首地址和元素序号在0(1)时间内找到指定的元素

3.按值查找,时间复杂度是o(n),因为需要遍历

线性表的链式实现:

1.存储是非顺序

 

其实可以认为,什么的指针指向什么

而像这种,就是取值 

删除操作:

 

不管怎么说,respect

12.12_黑马数据结构与算法笔记Java_黑马程序员数据结构-CSDN博客 

 

 最好数出来


为什么创建一个包括n个结点的有序单链表的时间复杂度是o(n的平方)


创建一个包括n个节点的有序单链表的时间复杂度为O(n^2)的原因主要在于插入操作的复杂性。当构建有序链表时,每次插入新节点都需要保持链表的有序性,这意味着每个新节点都需要找到其在链表中的正确位置然后插入。随着链表的增长,后续节点的插入操作将越来越耗时,因为每次插入前都需要遍历已经排序的部分链表来确定插入位置。

具体分析如下:

1. **初始情况**:插入第一个节点时,时间复杂度为O(1),因为链表为空,无需比较。

2. **插入第二个节点**:需要与第一个节点比较一次,时间复杂度O(1)。

3. **插入第i个节点**:需要与前面i-1个已排序的节点逐一比较,以找到合适的位置插入,这一过程的时间复杂度为O(i)。

4. **总时间复杂度**:随着i从1增长到n,每次插入的平均比较次数呈线性增长,因此总的比较次数为1+2+3+...+(n-1) = n*(n-1)/2,这是一个关于n的二次函数,其时间复杂度为O(n^2)。

简而言之,每次插入操作的比较次数随链表长度线性增加,导致整体的时间复杂度上升到二次级别。如果使用更高效的插入方法,如二分查找后再插入(但这要求链表支持随机访问,而单链表通常不便于直接实现这一点),则可能降低这个时间复杂度,但在基本的单链表结构和操作下,创建有序单链表的时间复杂度确实是O(n^2)。
 

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

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

相关文章

四款优秀的电脑屏幕监控软件|监控电脑屏幕的必备软件

在选择监控电脑屏幕的软件时,我们需要考虑多个因素,包括软件的功能性、易用性、兼容性、安全性以及价格等。以下是几款在市场上广受好评的监控电脑屏幕的软件,它们各自具有独特的特点和优势。 1.安企神软件 安企神软件是一款专业的电脑屏幕监…

【电气学习六】HART仪表与HART信号

【电气学习六】HART仪表与HART信号 学习使人快乐 文章目录 【电气学习六】HART仪表与HART信号前言一、HART仪表是什么?二、HART协议1.什么是HART协议?2.HART协议的工作原理3.HART协议的特点4.HART协议的命令格式5.无源信号与有源信号的定义6.如何采集无源…

编写程序,提示用户输入以米/秒(m/s)为单位的速度v和以米/秒的平方(m/s)为单位的加速度 a,然后显示最短跑道长度。

(物理:求出跑道长度)假设一个飞机的加速度是a而起飞速度是v,那么可以使用下 面的公式计算出飞机起飞所需的最短跑道长度: 编写程序,提示用户输入以米/秒(m/s)为单位的速度v和以米/秒的平方(m/s)为单 位的加速度 a,然后显示最短跑道长度。下面…

C++基础与深度解析 | 模板 | 函数模板 | 类模板与成员函数模板 | concepts | 完美转发 | 模板的其他内容

文章目录 一、函数模板二、类模板与成员函数模板三、Concepts(C20)四、模板相关内容1.数值模板参数与模板模板参数2.别名模板与变长模板3.包展开与折叠表达式4.完美转发与lambda表达式模板5.消除歧义与变量模板 一、函数模板 在C中,函数模板是一种允许你编写可以处理…

GIGE 协议摘录 —— GVCP 协议(二)

系列文章目录 GIGE 学习笔记 GIGE 协议摘录 —— 设备发现(一) GIGE 协议摘录 —— GVCP 协议(二) GIGE 协议摘录 —— GVSP 协议(三) GIGE 协议摘录 —— 引导寄存器(四) GIGE 协议…

Allure在jenkins中无法显示的问题

jenkins中使用allure生成报告需要注意工作环境和路径的配置 前提条件: jenkins容器中已安装jdk和allure jenkins中配置全局工具环境: 项目中配置allure路径: 路径来源: Path需要选择相对路径的allure-report、allure-results

react快速开始(四)-之Vite 还是 (Create React App) CRA? 用Vite创建项目

文章目录 react快速开始(四)-之Vite 还是 (Create React App) CRA? 用Vite创建项目背景Vite 和 (Create React App) CRAVite?Vite 是否支持 TypeScript? 用Vite创建react项目参考 react快速开始(四)-之Vite 还是 (Create React App) CRA? 用Vite创建项…

劝大家:打个工而已,千万不要太老实,上周,我们单位一位兢兢业业,工作了20年的老员工,被公司辞退了...

学习资源已打包,需要的小伙伴可以戳这里 学习资料 在当今社会,职场竞争激烈,每个人都在努力工作,追求自己的目标。然而,随着工作经验的积累和观察的深入,我发现了一些工作中的现象,希望通过本文…

EE trade:通货膨胀时期投资什么最好

当通货膨胀来袭,货币购买力下降,闲置资金贬值速度加快。为了有效抵御通货膨胀,投资者需要选择能够保值甚至增值的投资工具。以下是几种在通货膨胀环境下较为理想的投资选择: 1. 投资股票 收益性和风险性:股票虽然风险…

寻找python库的安装路径

以pip库为例 要找到并修改 pip 库中的 __pip-runner__.py 文件,您可以按照以下步骤操作: 找到 pip 库的安装路径: 通常,Python 库会安装在您的虚拟环境或全局 Python 包目录中。您可以通过以下命令来找到 pip 库的路径&#xff1…

【代码随想录】【算法训练营】【第28天】 [93]复原IP地址 [78]子集 [90]子集II

前言 思路及算法思维,指路 代码随想录。 题目来自 LeetCode。 day 28,工作的周二~ 题目详情 [93] 复原 IP 地址 题目描述 93 复原 IP 地址 解题思路 前提:分割问题 思路:回溯算法,确定每次递归回溯的分割位置…

【CTF-Web】XSS漏洞学习笔记(附ctfshow web316-333题目)

XSS 跨站脚本攻击 文章目录 XSS 跨站脚本攻击What is XSS?How to lead XSS?Where is the XSS?CookieHow to use XSS?反射型XSS存储型XSSDom-Based XSS Then Lets see the XSS in CTF各种过滤绕过学习web316Web317-319Web319-321We…

[经验] 蝉联一词的含义是什么 #知识分享#职场发展

蝉联一词的含义是什么 蝉联这个词起源于古代中国,最初是指天子连续两年以上的年号相同。后来,这个词被用于形容某个人或某个团体连续多次获得某种荣誉或奖项的情况。在现代生活中,我们常常听到某个体育运动员蝉联冠军、某个企业蝉联业绩排行榜…

编写程序提示用户输入一个数目(例如:100)、年利率(例如:5)以及月份数(例如:6),然后显示给定月份后账户上的钱数。

(财务应用程序:复利值)假设你每月向银行账户存 100美元,年利率为5%,那么每 月利率是 0.05/12-0.00417。 第一个月之后,账户上的值就变成:100*(10.00417)100.417 第二个月之后,账户上的值就变成(100100.417)*(10.00417)-201.252 第…

MySQL(三) - 基础操作

一、索引 由于我们在使用数据库的时候,大部分操作的都是查询操作,但是我们每一次进行查询都需要遍历一遍表中所有数据,这会花费O(n)的时间,因此数据引入了“索引” 也就是在底层使用了数据结构来进行优化查询的操作,但…

Ubuntu流体程序编译

文章目录 前言一、换源1.1 (任意)终端窗口输入1.2 在终端窗口依次输入下面命令 二、编译mpap程序----安装各类库2.1 安装 Eigen 库安装Lapack、VTK、SuperLU可以按照师弟文件给出的教程 2.2 安装Lapack2.3 安装VTK2.4 安装SuperLU2.5 安装其他包2.6 安装…

45-5 护网溯源 - 远控木马样本溯源

在分析恶意样本时,需要查看包括作者名字、ID、IP地址、域名等在内的相关信息。 把恶意样本上传到微步、360沙箱云分析:样本报告-微步在线云沙箱 (threatbook.com) 动态分析 运行截图 发现该木马是与一个装机软件绑定的,你运行正常软件的时候…

No module named _sqlite3解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

21 - 即时食物配送 II(高频 SQL 50 题基础版)

21 - 即时食物配送 II -- sum(if(order_datecustomer_pref_delivery_date,1,0))/count(*)sum(order_datecustomer_pref_delivery_date)/count(*) -- count(*),表示数据的行数,如果有分组,为分组后数据的行数select round(100*sum(if(order_datecustomer_…

天诚公租房、人才公寓NB-IOT人脸物联网智能门锁解决方案

近期,全国已有超70城推出商品房“以旧换新”。各地商品房“以旧换新”主要采取国企收购、市场联动、税费补贴三种模式,二手房和新房市场交易活跃度均有提升。 一、人才公寓掀起建设浪潮 事实上,旧房被收购后将被纳入保障性租赁住房&#xf…