![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构和算法
peacejl
这个作者很懒,什么都没留下…
展开
-
bitmaps相关整理
什么是Bitmaps?Bitmaps是一种算法思想。也是一种数据结构bitmaps大致理解bitmaps就是使用每一个bit代表该位置上的数是否存在。举例说明:1byte有8bit,所以能表示数的范围是:1-8,或者0-7.8个数字。XXXX XXXX 当一个要用该字节表示,数字1,3,5,7存在时,那么该字节的实际值位:01010101例子1问: “一个文本中存有10亿个不重复的无序的数字,如果快速排序?”以Java为例,如果要在Java中进行排列,那么先需要将,10亿个数字,读取进Jav原创 2020-10-11 09:54:04 · 161 阅读 · 0 评论 -
HyperLogLogs
HyperLogLog是什么?HyperLogLog 是用来做基数统计的算法,HyperLogLog 的优点是,在输入元素的数量或者体积非常非常大时,计算基数所需的空间总是固定 的、并且是很小的。HyperLogLog不保存元素本身,故只能知道集合大小,并不能知道具体的元素是哪些举例:如果统计一个10亿用户量的上线情况,当只需知道,多少用户上线,而不需具体知道哪些用户上线时。可以使用HyperLogLog。...原创 2020-10-11 10:10:16 · 181 阅读 · 0 评论 -
B树、B+树
B树的诞生1970年,R.Bayer和E.mccreight提出了一种适用于外查找的树,它是一种平衡的多叉树,称为B树(或B-树、B_树)。B树的定义,性质B树:平衡的多叉树、平衡多路查找树(查找路径不只两个)性质:根结点至少有两个子女;每个非根节点所包含的关键字个数 j 满足:┌m/2┐ - 1 <= j <= m - 1;?除根结点以外的所有结点(不包括叶子结点)的度数正好是关键字总数加1,故内部子树个数 k 满足:┌m/2┐ <= k <= m ;?所有的叶子结原创 2020-10-15 11:56:59 · 179 阅读 · 0 评论 -
冒泡排序
什么是冒泡排序比较相邻的元素。如果第一个比第二个大,就交换他们两个对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。针对所有的元素重复以上的步骤,除了最后一个一句话描述关于使用冒泡时,从0-Max,只看小。从Max-0,只看大?Java语言实现 public static void bubbleSort(int arr[]) { for(int i =0 ; i<arr.length-1 ; i++) {原创 2020-10-29 10:05:58 · 97 阅读 · 0 评论 -
动态规划整理
动态规划的基本思想:节约重复求相同子问题的时间,引入一个数组(或临时变量),不管它们是否对最终解有用,把所有子问题的解存于该数组(或临时变量)中。(通常需要牺牲空间复杂度)动态规划里非常重要的两个概念:状态和状态转移方程。能用动态规划解决的话,需要有无后效性。无后效性:某阶段的状态一旦确定,则此后过程的演变不再受此前各种状态及决策的影响词语:递推、递归、分治实例:?https://...原创 2019-04-01 17:40:05 · 168 阅读 · 0 评论