
数据结构与算法
文章平均质量分 71
数据结构与算法
小超嵌入式笔记
"强大就是拥有权利去共情和帮助那些弱势的人"
展开
-
2022 数据结构与算法《王道》学习笔记 (十二)树和二叉树 详细总结
`树的定义`树是n(n≥0)个节点的有限集。当n=0时,称为空树。在任意一颗非空树中应满足:(1)有且仅有一个特定的称为根的结点(2)当n>1时,其余节点可分为m(m>0)个互不相交的有限集T1,T2,''',Tm,其中每个集合本身又是一棵树,并且称为根的子树树的定义是递归的,即在树的定义中又用到了其自身,树是一种递归的数据结构。树作为一种逻辑结构,同时也是一种分层结构,具有以下两个特点:1)树的根结点没有前驱,除根结点外的所有结点有且只有一个前驱2)树中所有结点可以有零个或多个后继树适原创 2022-03-16 22:33:46 · 392 阅读 · 0 评论 -
2022 数据结构与算法《王道》学习笔记 (十一)KMP算法 详细归纳总结 改进的模式匹配算法
暴力模式匹配算法的最坏时间复杂度为*O*(*nm*),其中*n*和*m*分别为主串和模式串的长度。改进的模式匹配算法——KMP算法上图的匹配过程,在第三趟匹配中,i=7、j=5的字符比较不等,于是又从i=4、j=1重新开始比较。仔细观察会发现,i=4和j=1,i=5和j=1及i=6和j=1这三次比较都是不必进行的,因为从第三趟部分匹配的结果可知,主串中第4、5和6个字符是'b'、'c'和'a'。因为模式中第一个字符是‘a’,因此它无需再和这三个字符进行比较。而仅需将模式向右滑动3个字符的位置原创 2022-03-13 22:23:58 · 2316 阅读 · 1 评论 -
2022 数据结构与算法《王道》学习笔记 (十)串 KMP算法 串的总结 课后习题笔记
系列文章目录文章目录系列文章目录前言一、串的定义和实现二、1.2.读入数据总结前言串的框架:提示:以下是本篇文章正文内容,下面案例可供参考一、串的定义和实现串是由零个或多个字符组成的有限序列。一般记为二、1.代码如下(示例):2.读入数据代码如下(示例):data = pd.read_csv( 'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')print(data.head())原创 2022-03-11 15:16:00 · 616 阅读 · 1 评论 -
2022 数据结构与算法《王道》学习笔记 (九)栈和队列的应用
1.栈在括号匹配中的应用2.栈在表达式求值中的应用3.栈在递归中的应用4.队列在层次遍历中的应用5.队列在计算机系统中的应用原创 2022-03-08 16:00:00 · 843 阅读 · 0 评论 -
2022 数据结构与算法《王道》学习笔记 (八)队列
文章目录前言队列一、队列的基本概念1.队列的定义2.队列常见的基本操作3.队列的顺序存储结构4.循环队列5.循环队列的操作6.队列的链式存储结构7.链式队列的基本操作8.双端队列前言本文为学习笔记,摘自《王道论坛数据结构》参考博文:这个队列一、队列的基本概念1.队列的定义队列简称队,是一种操作受限的线性表,只允许在表的一端进行插入,而在表的另一端进行删除。向队列中插入元素称为入队或进队;删除元素称为出队或离队。队列是一种先进先出特性的线性表。队头。允许删除的一端,又称队首。队尾。.原创 2022-03-08 14:30:00 · 854 阅读 · 0 评论 -
2022 数据结构与算法《王道》学习笔记 (七)栈
数据结构与算法系列文章目录文章目录数据结构与算法系列文章目录前言一、二、1.2.前言一、二、1.2.原创 2022-03-07 14:46:47 · 1036 阅读 · 2 评论 -
2022 数据结构与算法《王道》学习笔记 (六)双链表
数据结构与算法系列文章目录本文内容摘自《王道数据结构》,经自我总结后做成笔记,供学习参考用。本文部分图片摘自博文文章目录数据结构与算法系列文章目录前言1、双链表的插入操作2.双链表的删除操作3.静态链表4.顺序表和链表的比较前言单链表结点中只有一个指向其后继的指针,使得单链表只能从头结点依次顺序地向后遍历。要访问某个结点的前驱结点(插入、删除操作时),只能从头开始遍历,访问后继结点的时间复杂度为O(1),访问前驱结点的时间复杂度为O(n)。为了克服单链表的上述缺点,引入双链表,双链表结点中原创 2022-03-05 09:00:00 · 428 阅读 · 0 评论 -
2022 数据结构与算法《王道》学习笔记(五)线性表的链式表示 单链表
数据结构系列文章目录文章目录数据结构系列文章目录前言一、链表的定义二、单链表上基本操作的实现1.采用头插法建立单链表2.采用尾插法建立单链表3.按序号查找结点值4.按值查找表结点5.插入结点操作6.删除结点操作7.求表长操作前言本文摘自《王道数据结构》PPT和视频,经过自己总结后当做笔记和学习来用。顺序表可以随时存取表中的任意一个元素,它的存储位置可以用一个简单直观的公式表示,但插入和删除操作需要移动大量元素。链式存储线性表时,不需要使用地址连续的存储单元,即不要求逻辑上相邻的元素在物理位置上原创 2022-03-04 17:30:00 · 608 阅读 · 0 评论 -
2022 数据结构与算法《王道》学习笔记 (四)线性表的顺序结构 顺序表 总结
数据结构系列文章目录文章目录数据结构系列文章目录一、顺序表的定义二、顺序表上基本操作的实现1.插入操作2.删除操作3.按值查找(顺序查找)一、顺序表的定义线性表的顺序存储又称顺序表。它是用一组地址连续的存储单元依次存储线性表中的数据元素,从而使得逻辑上相邻的两个元素在物理位置上也相邻。顺序表的特点是表中元素的逻辑顺序与其物理顺序相同。假定线性表的元素类型为ElemType,则线性表的顺序存储类型描述为:#define MaxSize 50 //定义线性表的最大长度原创 2022-03-03 16:28:30 · 543 阅读 · 1 评论 -
2022 数据结构与算法《王道》学习笔记(三)线性表 总结
(一)线性表的定义和基本操作(二)线性表的实现:顺序存储;链式存储;线性表的应用原创 2022-03-02 19:00:00 · 342 阅读 · 0 评论 -
2022 数据结构与算法《大话数据结构》学习笔记算法的基础概念
系列文章目录文章目录系列文章目录前言一、算法是什么?二、算法的特性1.输入输出2.有穷性3.确定性4.可行性三、算法设计的要求1.正确性2.可读性3.健壮性4.时间效率高和存储量低四、算法效率的质量1.时间复杂度2.空间复杂度前言提示:以下是本篇文章正文内容,下面案例可供参考一、算法是什么?算法是描述解决问题的方法。算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。二、算法的特性算法具有五个基本特性:输入、输出、有穷性、确定性和可行性。原创 2022-01-17 14:22:59 · 419 阅读 · 1 评论 -
数据结构学习笔记一基础概念和基础类型#学习计划数据结构与算法
数据结构:是相互之间存在的一种或多种特定关系的数据元素的集合。原创 2022-01-11 16:01:06 · 424 阅读 · 0 评论