
数据结构
文章平均质量分 80
数据结构学习
lwb拾光
这个作者很懒,什么都没留下…
展开
-
基于Java实现的队列
基于Java实现的队列队列1. 队列的概念循环队列单循环队列1. 基本实现2. 代码实现 队列 1. 队列的概念 队列和链表来说非常的相似的,队列同样是前一个节点连接后一个节点,同样是线性结构;但是队列不同与链表的就是队列只允许尾部插入(入队),头部删除(出队),而链表是允许所有位置的操作,所以队列的情况与操作相对于链表要简单所以在这里我们就不再详细的解释普通队列的实现(需要实现的话可以在我上次写的链表操作中只留下尾部插入的代码即可) 循环队列 概念:对于队列来说循环队列才是需要注意 情况,他提高内原创 2021-04-15 22:48:31 · 85 阅读 · 0 评论 -
基于Java实现链表
链表链表的基本原理链表与数组的优劣数组链表链表的实现链表节点的定义头结点的创建与动态数组重复的方法,这里就不再过多的赘述获取节点getNode方法添加节点方法add删除节点remove双向链表总结 链表的基本原理 链表,顾名思义就是像锁链一样的把数据都串连在一起;他通过定义链表结构中的指针来把各个节点连接在一起。而节点就是用来存储信息的,数据和下一个节点的指针都是储存在上一个节点中。当然在链表中有一个特殊的节点——头结点(head)他里面不存数据,但是并不代表他不可以存数据,知识大家都这么约定好了不存数据,原创 2020-09-22 18:55:52 · 230 阅读 · 0 评论 -
基于Java实现动态数组
动态数组 动态数组的基本原理 实现一个基本的动态数组,需要实现一些基本的功能,增删改查应该是最基本的了,而在此基础之上还需要实现相应的动态扩容与泛型。对于动态扩容来说,我们需要在数组的使用过程中来进行判断,是否需要进行扩容,以及如何更有效的进行扩容,添加长度还是重新申请。而泛型的实现就需要数组能够接受任何类型的数据。 动态扩容 实现动态扩容的方式有很多,但是在数组的后面接上一段内存是明显不行的,我们需要做的就是重新申请一个更大容量的数组,这样才是可行的方法,但是问题又来了用什么方式来申请才能够最有效的扩容,原创 2020-07-20 00:01:51 · 1568 阅读 · 0 评论 -
数据结构与算法的初步与复杂度
这里写自定义目录标题数据结构与算法何为数据结构数据数据之间的关系何为算法数据结构与算法的关系算法复杂度算法设计的要求如何一个算法的好坏如何判断一个算法的复杂度大O表示法时间复杂度的表示时间复杂度的计算多数据规模情况算法的优化方向生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 数据结构与算法 程序是由数据结构加上算法组成的,数据原创 2020-07-06 23:25:06 · 168 阅读 · 0 评论