数据结构
文章平均质量分 83
裙下的霸气
01010101010
展开
-
高阶数据结构——图
图的基本概念图是由顶点集合和边的集合组成的一种数据结构,记作 G = ( V , E ) G=(V, E)G=(V,E)。如下图:带权图示例:如下图:如下图:图的相关应用场景图与树的联系与区别。原创 2023-09-19 18:20:39 · 305 阅读 · 2 评论 -
八大排序算法
八大排序原创 2023-02-22 18:21:56 · 764 阅读 · 4 评论 -
二叉树(二)
位于堆顶的元素是一个堆中最大或者最小的,那么我们可以根据这一特性进行选数,让数据从大到小或者从小到大排序。根据我们所学的,我们可以先创建堆,然后在把要排序的数组中的元素一个个插入堆中,接着我们在依次取出栈顶元素放入要排序的数组,然后在Pop栈顶元素,循环操作,直到堆为空停止,就排好了。...原创 2022-08-05 16:56:19 · 101 阅读 · 0 评论 -
二叉树(1)
我们认为堆是一个完全二叉树,并且堆中的父子关系有且只有一种,要么是父亲结点大于等于孩子结点,要么是父亲节点小于等于孩子结点。我们根据根节点在堆中的大小,来确定是大堆还是小堆,如果根节点在堆中最大,则是大根堆;如果根节点在堆中最小,则是小根堆。......原创 2022-07-21 10:40:13 · 67 阅读 · 0 评论 -
带头双向循环链表
首先,我们创建链表时,要先明白这个链表的结构,它有前指针和后指针,和存放数据的区域,所以我们应该如下创建:首先我们使用返回值的方式,不像单链表一样使用二级指针的形式,是因为双向带头循环链表的头结点不会改变,所以没必要使用二级指针。只使用返回值就可以在链表初始化时,我们其实只是创建了一个头结点,把它的前后指针都指向自己,进而完成后续的操作,这里保证链表的整体统一,所以也使用了返回值的形式。在链表的打印中,我们要注意的是,这个链表是循环的链表,所以不可以指直接遍历,否则会导致链表死循环,所以我们原创 2022-07-12 12:03:23 · 146 阅读 · 1 评论 -
单链表SList
链表是针对顺序表的缺陷而设计的。1.顺序表扩容存在一定的空间浪费——链表按需扩容2.头部和中间的删除和插入都需要挪动数据,时间复杂度O(N)——链表物理空间不连续,不用挪动通过下面对单链表的实现,可以发现单链表的缺陷也有很多,但学单链表还是有很大意义的:链表笔试面试题,基本都是单链表结构;单链表以后会作为其他数据结构的子结构,如哈希桶、图的邻接表。链表是由一个个结点链接而成,每个结点包含:1.存储的数据;2.指向下一个结点的指针。由于多个接口都需要新建结点,故将此逻辑封装为另外的接口,方便代码复用。原创 2022-07-07 15:36:44 · 144 阅读 · 0 评论 -
顺序表 (1)
顺序表Sequence list其实就是一个数组。物理地址连续。但对比起一般数组来说,顺序表的数据必须是从第一个位置开始连续存储,紧挨着放,不能间隔放。数据结构:帮助我们更好地管理数据——增删查改当size和capacity相等时,有2种情况:一种是它们都为0,则此时直接给一个一定的容量,比如4,另一种是数据到达容量值时即size=capacity时,扩容2倍(也可以按其他规则扩容)。向前覆盖顺序表中,尾插尾删的时间复杂度为O(1),头插头删的时间复杂度是O(N)。实现了SLInsert原创 2022-07-07 15:34:28 · 112 阅读 · 0 评论 -
栈和队列
栈栈的概念及结构栈: 一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除 操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。 压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。 出栈:栈的删除操作叫做出栈。出数据也在栈顶。栈的实现在实现之前,我们要思考:首先,这是一个线性表实现的,所以我们有两个选择:顺序表,也就是数组实现...原创 2022-05-21 19:51:24 · 227 阅读 · 0 评论 -
数据结构——复杂度
算法的复杂度 算法在编写成可执行程序后,运行时需要耗费时间资源和空间(内存)资源 。因此衡量一个算法的好坏,一般是从时间和空间两个维度来衡量的,即时间复杂度和空间复杂度。 时间复杂度主要衡量一个算法的运行快慢,而空间复杂度主要衡量一个算法运行所需要的额外空间。在计算机发展的早期,计算机的存储容量很小。所以对空间复杂度很是在乎。但是经过计算机行业的迅速发展,计算机的存储容量已经达到了很高的程度。所以我们如今已经不需要再特别关注一个算法的空间复杂度。时间复杂度时间复杂度的定义:在计...原创 2022-04-18 19:37:47 · 617 阅读 · 0 评论