22 22
3年前
一篇文章帮你搞懂二叉堆的那些事
【系列文章推荐阅读】1.什么是二叉堆?“二叉”自不必多说,本章主要介绍的树都是二叉树。那么啥是“堆”呢?我们在日常生活中,通常会说“一堆东西”或者“堆东西”,这里的“堆”,通常指重叠放置的许多东西。我们在堆东西的时候,肯定都有一个经验,即:为了使这堆东西更稳定,会将比较重的、大的东西放在下面,比较轻的、小的东西放在上面。这个经验放在数据结
徐小夕 徐小夕
3年前
JavaScript 中的二叉树以及二叉搜索树的实现及应用
接下来让我们一起来探讨js数据结构中的树。这里的树类比现实生活中的树,有树干,树枝,在程序中树是一种数据结构,对于存储需要快速查找的数据非有用,它是一种分层数据的抽象模型。一个树结构包含一系列存在父子关系的节点。每个节点都有一个父节点以及零个或多个子节点。如下所以为一个树结构:)(https://imghelloworld.osscnbe
Wesley13 Wesley13
3年前
java——平衡二叉树 AVLTree、AVLMap、AVLSet
平衡二叉树:对于任意一个节点,左子树和右子树的高度差不能超过1packageDate_pacage;importjava.util.ArrayList;publicclassAVLTree<KextendsComparable<K,V{privateclassNod
zhenghaoz zhenghaoz
3年前
算法笔记:B树
B树广泛应用于各种文件系统,文件系统中,数据都是按照数据块来进行读取操作。结合二叉树的优点和文件系统的特点,于是就有了B树:btree(https://imghelloworld.osscnbeijing.aliyuncs.com/imgs/ae3caa193bc4c55f0519114b15313721.png)B树当中每个节点存储
Wesley13 Wesley13
3年前
MySQL索引底层:B+树详解
前言当我们发现SQL执行很慢的时候,自然而然想到的就是加索引。对于范围查询,索引的底层结构就是B树。今天我们一起来学习一下B树哈~公众号:「捡田螺的小男孩」树简介、树种类B树、B树简介B树插入B树查找B树删除B
Wesley13 Wesley13
3年前
Java数据结构和算法(十五)——无权无向图
前面我们介绍了树这种数据结构,树是由n(n0)个有限节点通过连接它们的边组成一个具有层次关系的集合,把它叫做“树”是因为它看起来像一棵倒挂的树,包括二叉树、红黑树、234树、堆等各种不同的树,有对这几种树不了解的可以参考我前面几篇博客。而本篇博客我们将介绍另外一种数据结构——图,图也是计算机程序设计中最常用的数据结构之一,从数学意义上讲
Stella981 Stella981
3年前
C语言实现的基于Huffman哈夫曼编码的数据压缩与解压缩
实验目的了解文件的概念掌握线性链表的插入、删除等算法掌握Huffman树的概念及构造方法掌握二叉树的存储结构及遍历算法利用Huffman树及Huffman编码,掌握实现文件压缩的一般原理参考博文和源码下载地址:https://writebug.com/article/1281.html(https://www
Stella981 Stella981
3年前
LeetCode每日一题 (30) 501. 二叉搜索树中的众数
501\.二叉搜索树中的众数(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fleetcodecn.com%2Fproblems%2Ffindmodeinbinarysearchtree%2F)!在这里插入图片描述(https://oscimg
Wesley13 Wesley13
3年前
Java数据结构和算法(四)——栈
前面我们讲解了数组,数组更多的是用来进行数据的存储,纯粹用来存储数据的数据结构,我们期望的是插入、删除和查找性能都比较好。对于无序数组,插入快,但是删除和查找都很慢,为了解决这些问题,后面我们会讲解比如二叉树、哈希表的数据结构。  而本篇博客讲解的数据结构和算法更多是用作程序员的工具,它们作为构思算法的辅助工具,而不是完全的数据存储工具。这些数据结构的生
Stella981 Stella981
3年前
Leetcode 783. 二叉搜索树结点最小距离
题目描述给定一个二叉搜索树的根结点root,返回树中任意两节点的差的最小值。!(https://uploadimages.jianshu.io/upload_images/97388075b2ef3e526250878.PNG?imageMogr2/autoorient/strip|imageView2/2/w/505)