迅速补档,为A*做一下铺垫… 概念定义 二叉堆就是一个支持插入、删除、查询最值的数据结构。他其实是一棵完全二叉树。那么堆一般分为大根堆和小根堆 大根堆 树中的任意一个节点的权值都小于或者等于其父节点的权值,则称该二叉树满足大根堆性质。 小根堆 树中的任意一个节点的权值都大于或者等于其父节点的权值,则 ...
分类:
其他好文 时间:
2019-07-21 20:08:19
阅读次数:
134
今天开始学习了java,初步了解了一下Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等 。预习了一下Java的基本数据结构,分为整数类型:byte 8位、short 16位 ...
分类:
其他好文 时间:
2019-07-21 18:18:24
阅读次数:
90
Redis数据结构基础教程 Redis有5个基本数据结构,string、list、hash、set和zset。它们是日常开发中使用频率非常高应用最为广泛的数据结构,把这5个数据结构都吃透了,你就掌握了Redis应用知识的一半了。 string 首先我们从string谈起。string表示的是一个可变 ...
分类:
其他好文 时间:
2019-07-16 12:42:45
阅读次数:
95
理论概念 这玩意一直都是个好东西,但是我总觉得玄学的一批。今天借着专题学习的劲头,把Hash好好梳理一下。 定义/作用 哈希这东西应该都不陌生。将复杂的信息映射到一个容易维护的值域之内。那么Hash函数就有点类似于一个映射关系。通过这个函数来产生一个关键值(Key),通过关键值与值(value)的对 ...
分类:
其他好文 时间:
2019-07-15 23:59:46
阅读次数:
190
理论知识与功能 定义 Trie(字典树),用于实现字符串的快速检索。其每个节点都含有若干个字符指针。 例如我在字典树里插入"abc","ac",那么就会生成一个这样丑陋的东西。 好吧是我的图画的丑陋 初始化 一棵空的Trie仅包含一个根节点,那么他的指针自然也指向空。 注:因为Trie运用在检索字符 ...
分类:
其他好文 时间:
2019-07-14 20:15:53
阅读次数:
123
"1101 火车进栈" dfs题,亏我想了那么久。。。 "POJ2559 Largest Rectangle in a Histogram " 单调栈。 我们假设已经选定了某一个高度,得到了一个确定的长度。 现在我们向后扫,由于我们在当前高度已经最长了,所以接下来肯定会变小。那多余的部分我们就可以都 ...
分类:
其他好文 时间:
2019-07-08 00:38:22
阅读次数:
158
目录 1.队列 2.用python实现队列 一.队列 - 概念:队列是项的有序结合,其中添加新项的一端称为队尾,移除项的一端称为队首。当一个元素从队尾进入队列时,一直向队首移动,直到它成为下一个需要移除的元素为止。最近添加的元素必须在队尾等待。集合中存活时间最长的元素在队尾,这种排序成为 FIFO, ...
分类:
其他好文 时间:
2019-07-06 00:25:33
阅读次数:
106
一.线性数据结构 - 我们从四个简单但重要的概念开始研究数据结构。栈,队列,deques(双向队列), 列表是一类数据的容器,它们数据元素之间的顺序由添加或删除的顺序决定。一旦一个数据元素被添加,它相对于前后元素一直保持该位置不变。诸如此类的数据结构被称为线性数据结构。 - 线性数据结构有两端,有时 ...
分类:
其他好文 时间:
2019-07-06 00:15:05
阅读次数:
80
介绍: ZSet数据结构类似于Set结构,只是ZSet结构中,每个元素都会有一个分值,然后所有元素按照分值的大小进行排列,相当于是一个进行了排序的链表。 如果ZSet是一个链表,而且内部元素是有序的,在进行元素插入和删除,以及查询的时候,就必须要遍历链表才行,时间复杂度就达到了O(n),这个在以单线 ...
分类:
其他好文 时间:
2019-06-30 10:02:35
阅读次数:
169
1.了解基本数据结构及特点 如,有哪些二叉树,各有什么特点 树二叉搜索树 每个节点都包含一个值,每个节点至多有两棵子树,左孩子小于自己,右孩子大于自己,时间复杂度是O(log(n)),随着不断插入节点,二叉树树高变大,当只有左(右)孩子时,时间复杂度变为O(n). 平衡二叉树保证每个节点左右子树高度 ...
分类:
编程语言 时间:
2019-06-29 10:54:11
阅读次数:
90