数据结构
文章平均质量分 62
花非玉
这个作者很懒,什么都没留下…
展开
-
GO语言数据结构之链表
链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。单向链表单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以节点来表示的,每个结点的构成:数据+ 后续元素位置指针。代码实现package mainimport "fmt"..原创 2021-08-18 16:35:47 · 454 阅读 · 0 评论 -
GO语言数据结构之队列
队列是一种特殊的线性表,特殊之处在于它只允许在表的前端进行删除操作,而在表的后端进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。顺序队列在顺序队列中,为了降低运算的复杂度,元素入队时,只修改队尾指针;元素出对时,只修改队头指针。由于顺序队列的存储空间是提前设定的,因此队尾指针会有一个上限值,当队尾指针达到其上限时,就不能只通过修改队尾指针来实现新元素的入队操作了。代码实现//定义队列结构type queue struct {原创 2021-08-16 14:02:18 · 772 阅读 · 0 评论 -
GO语言数据结构之稀疏数组
稀疏数组可以看做是普通数组的压缩当一个数组中大部分元素为0,或者为同一值的数组时,可以使用稀疏数组来保存该数组。稀疏数组的处理方式是:记录数组一共有几行几列,有多少个不同值;把具有不同值的元素和行列及值记录在一个小规模的数组中,从而缩小程序的规模借用解释稀疏数组最多的例子五子棋来说如何将五子棋盘上的黑白子保存下来用计算机来看将五子棋的棋盘15×15总共225个交点转化为二维数组[0 0 0 1 0 0 0 0 0 0 0 0 0 0 0][0 0 0 0 0 0 0 ..原创 2021-08-11 18:06:41 · 178 阅读 · 0 评论