数据结构
文章平均质量分 94
数据结构学习
不是我衰
这个作者很懒,什么都没留下…
展开
-
数据结构之并查集
首先需要明确, 并查集是一个在一些应用问题中, 需要将n个不同的元素划分成一些开始时,自成, 然后按一定的规律将归于. 在此过程中要反复用到的运算. 适合于描述这类问题的抽象数据类型称为有10个人来自不同的学校, 起先都是的, 现给这些学生进行编号:{0, 1, 2, 3,4, 5, 6, 7, 8, 9};给以下数组用来存储该小集体, 数组中的代表: 该小集体中具有。原创 2024-04-17 16:33:06 · 702 阅读 · 1 评论 -
数据结构之排序
1. 元素集合越接近有序,直接插入排序算法的时间效率越高2. 时间复杂度:3. 空间复杂度:4. 稳定性:稳定。原创 2023-08-27 00:24:47 · 813 阅读 · 3 评论 -
哈希的应用——位图
1.暴力查找:数据量大了, 效率就低.2.排序 + 二分查找问题a: 排序有代价问题b: 数组不方便增删3.引申出->ALV树和红黑树, 性能整体比较稳定, 插入不会有太大波动.4.哈希:搜索比较快, 但是整体不稳定, 插入是有波动的, 某次的插入可能需要扩容, 扩容代价比较高还有极端场景下某个桶的数量可能很高, 但可以改挂红黑树解决.以上数据结构, 空间消耗很高.对于数量很大的数据的场景?5、[整形]的是否存在及其扩展问题--位图及变形节省空间, 但是位图的局限是只能处理整型6、[原创 2023-11-27 23:10:14 · 178 阅读 · 0 评论 -
C++之哈希
以及。原创 2023-11-27 19:50:30 · 1031 阅读 · 0 评论 -
数据结构之AVL树
那我们这里以KV模型的结构实现AVL树,本质都是一样的int _bf;原创 2023-11-08 17:20:31 · 319 阅读 · 0 评论 -
C++之map和set模拟实现
在map和set的使用文章中提到了C++STL中的map和set的底层其实就是用的红黑树来实现的,所以可以用来一下STL中的map和set.原创 2023-11-16 16:31:32 · 78 阅读 · 0 评论 -
数据结构之红黑树
先来定义一下红黑树的结构:结点的颜色我们可以用一个枚举:enum COLORRED,BLACKT _val;COLOR _col;{}这里结点的颜色我们默认给的是红色, 为什么要选择红色, 黑色不可以吗?原创 2023-11-12 11:04:32 · 717 阅读 · 0 评论 -
数据结构之二叉搜索树
二叉搜索树的概念二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树:1.若它的左子树不为空,则2.若它的右子树不为空,则3.它的为什么又叫二叉排序树呢?如果对一棵搜索二叉树进行中序遍历的话,其实就能得到一个结点值的升序序列。中序遍历结果: 1 3 4 6 7 8 10 13 14二叉搜索树的结构首先我们来定义一下和。原创 2023-10-29 16:27:40 · 147 阅读 · 0 评论 -
数据结构之二叉树
二叉树的链式存储结构是指,用链表来表示一棵二叉树,即用链来指示元素的逻辑关系。通常的方法是链表中。原创 2023-08-21 00:53:27 · 171 阅读 · 0 评论 -
数据结构之栈与队列
3.循环队列的存储空间为 Q(1:100) ,初始状态为 front=rear=100。经过一系列正常的入队与退队操作后, front=rear=99 ,则循环队列中的元素个数为( )现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出。队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有。数组的尾插效率可以,但数组的头删效率较低,而链表尾插和头删效率都比较高。:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。入队列:进行插入操作的一端称为队尾。原创 2023-07-17 09:56:03 · 67 阅读 · 1 评论 -
数据结构之链表
实际中使用的链表数据结构,都是带头双向循环链表。另外这个结构虽然结构复杂,但是使用代码实现以后会发现结构会带来很多优势,实现反而简单了。也不能存链表的长度,万一链表里面的数据类型是char,链表长度超过128,就会溢出。链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。3.从堆上申请的空间,是按照一定的策略来分配的,两次申请的空间可能连续,也可能不连续。1.链式结构在逻辑上是连续的,但是在物理上不一定连续。哨兵位的存在方便头插。头文件SList.h。原创 2023-07-11 20:44:51 · 90 阅读 · 0 评论 -
数据结构线性表之顺序表
线性表(linear list)是n个具有相同特性的数据元素的有限序列。线性表是一种在实际中广泛使 用的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串...线性表在逻辑上是线性结构,也就说是连续的一条直线。但是在物理结构上并不一定是连续的, 线性表在物理上存储时,通常以数组和链式结构的形式存储。原创 2023-07-09 20:16:00 · 102 阅读 · 1 评论 -
数据结构之复杂度
等比数列求和或错位相减法虽然结果有误差,但是数量级相差不多,时间复杂度为O(2^n).原创 2023-07-09 18:00:25 · 67 阅读 · 1 评论