
数据结构
文章平均质量分 79
活跃的咸鱼
博客内容大部分均来日常学习的笔记。
展开
-
常见的几种限流算法代码实现(JAVA)
限流算法原创 2022-08-25 16:38:45 · 3854 阅读 · 3 评论 -
数据结构——并查集
畅通工程某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。问最少还需要建设多少条道路?在我们的测试数据文件夹中有一个trffic_project.txt文件,它就是诚征道路统计表,下面是对数据的解释:总共有20个城市,目前已经修改好了7条道路,问还需要修建多少条道路,才能让这20个城市之间全部相通?我们先不对本题进行解答,当我们对并查集了解之后便可以解决原创 2021-06-26 19:54:44 · 999 阅读 · 7 评论 -
图解堆和堆排序通俗易懂
堆堆的定义堆是计算机科学中一类特殊的数据结构的统称,堆通常可以被看做是一棵完全二叉树的数组对象。从定义上来看堆也是一种树但是必须是完全二叉树,完全二叉树定义:是一棵深度为k的有n个结点的二叉树,对树中的结点按从上至下、从左到右的顺序进行编号,如果编号为i(1≤i≤n)的结点与满二叉树中编号为i的结点在二叉树中的位置相同,则这棵二叉树称为完全二叉树。我们看如下图所示:左边的是一个完全二叉树,右边的不是,如何判断是不是一棵完全二叉树我们看下面堆的性质1堆的特性:1.它是完全二叉树,除了树原创 2021-06-25 16:35:36 · 445 阅读 · 3 评论 -
霍夫曼树和霍夫曼编码以及霍夫曼编码的应用
文章目录霍夫曼树介绍1.1霍夫曼树的定义1.2霍夫曼树的几个概念1.3构建霍夫曼树的过程1.4代码实现霍夫曼树霍夫曼编码介绍什么是霍夫曼编码通信领域的应用字符串压缩1.构造霍夫曼树2.生成赫夫曼树对应的赫夫曼编码表3.通过生成的赫夫曼编码表,返回一个赫夫曼编码 压缩后的byte[]文件的压缩和解压缩霍夫曼树介绍1.1霍夫曼树的定义给定N个权值作为N个叶子结点,构造一棵二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。哈夫曼树是带权路径长度最原创 2021-05-24 18:06:09 · 2341 阅读 · 12 评论 -
数据结构之链表(JAVA)
文章目录一,链表的介绍什么是链表链表和数组的比较二,单链表的实现添加节点修改节点删除节点查找节点遍历链表三,双向链表的实现双向链表的介绍双向链表的分析遍历链表添加节点修改节点删除节点四,循环链表的实现循环链表介绍循环链表实现五,链表相关的面试题求单链表中的有效节点个数查找单链表中的倒数第k个结点将单链表反转从尾到头打印链表一,链表的介绍什么是链表链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可原创 2021-05-15 17:00:31 · 905 阅读 · 12 评论 -
Java数组和链表实现栈
何为栈?栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。栈可以类比成现实生活中的弹夹或者羽毛球桶用数组实现栈用数组模拟栈的思路分析如图:1.定义一个top变量(指针)表示栈顶初始化为-1.2.定义一个变量来记录栈的大小。原创 2021-05-12 17:35:03 · 665 阅读 · 18 评论 -
Java用数组和链表实现队列
学过数据结构的人都了解过队列这一常见数据结构。下面我用数组和链表实现队列的两种方式做一个总结。队列介绍队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。队列的数据元素又称为队列元素。在队列中插入一个队列元素称为入队,从队列中删除一个队列元素称为出队。因为队列只允许在一端插入,在另一端删除,所以只有最早进入队列.原创 2021-05-07 10:21:56 · 554 阅读 · 15 评论 -
数据结构之稀疏数组
五子棋问题什么是稀疏数组稀疏数组可以看做是普通数组的压缩,但是这里说的普通数组是值无效数据量远大于有效数据量的数组。如下:原始数组: 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0原创 2021-05-05 10:01:58 · 337 阅读 · 7 评论