![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
文章平均质量分 92
Shi Peng
这个作者很懒,什么都没留下…
展开
-
布隆过滤器 学习笔记
一、前言布隆过滤器是大数据领域一个经常用到的算法,他经常用于在海量数据的场景中,快速判断某个元素在不在一个庞大的集合中。二、原理2.1、布隆过滤器用于解决什么问题在我们通常的理解中,要想判断某个元素是否在一个集合中,经典的结构应该是平衡树和Hash表。但无论哪种方法,都逃不开一点,就是存储原值。比如在爬虫场景中,我们需要记录下之前爬过的网站,我们要将之前的网址全部存储在容器里,然后再遇到新网站的时候,去判断他是否已经爬过了。在这个问题中,我们并不关心之前爬过的网址有哪些,我们只关心现在的网站有没有原创 2020-10-28 16:10:44 · 198 阅读 · 0 评论 -
Skiplist 跳表 学习笔记
一、Skiplist简介Skiplist是功能强大且原理简单的数据结构,且相比布隆过滤器,他的缺点和短板更少,应用更加广泛,如redis就用到了Skiplist。Skiplist是一个实现快速查找、增删数据的数据结构,可以做到O(logN) 时间复杂度的增删查,与红黑树相比他的logN中的N更小(skiplist的logN的在N范围内是随机的,一定小于N),且编码复杂度更低。因为Skiplist不需要旋转来维护红黑树的平衡。二、Skiplist原理Skiplist本质上是list, 也就是链表。我们原创 2020-10-27 20:56:42 · 442 阅读 · 2 评论 -
数据结构与算法学习笔记
一、目录1.1、数据结构数组:Array栈和队列:Stack / Queue优先队列(堆):Priority Queue(heap)链表:LinkedList (Single/Double)树(二叉树、二叉搜索树):Binary TreeHash表:HashTable集合:Disjoint Set单词查找树:Trie利用hash函数把数据映射到bit数组中:BloomFilterLRU Cache1.2、算法经典编程中序、前序、后序遍历贪心算法递归/回溯算法广度优先查原创 2020-06-09 10:20:59 · 1332 阅读 · 0 评论 -
Java版数据结构与算法学习笔记
11原创 2018-12-02 11:12:11 · 224 阅读 · 0 评论 -
leetcode刷题笔记
1. 两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的 两个 整数。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]答案:class Solut...原创 2018-12-03 14:43:33 · 2419 阅读 · 0 评论 -
五大常用算法学习笔记
一。分治算法:快速排序、归并排序、大整数乘法、二分查找、递归(汉诺塔)基本概念:把一个复杂的问题分成若干个相同或相似的子问题,再把子问题分成更小的子问题… , 知道最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。看上去有点类似Fork/Join框架,或map-reduce。排序算法中的快速排序、归并排序都是使用的分治算法。分治算法的适用场景:1)当问题规模缩小到一定的...原创 2019-02-26 21:52:52 · 15678 阅读 · 4 评论 -
大数据算法学习笔记
一。大数据面试经典题海量日志数据,从中提取出某日访问百度网站次数最多的那个IP.解题思路:分治算法(hashcode取模+map/reduce)1)要查IP, 先要知道一共最多有多少IP存在,IPV4最多有2的32次方,IPV6最多有2的48次方。对于2的32次方,占用4G空间,不可能一次全部加载到内存中。2)可采用分治法:将其分成n个子部分,分别计算。例如分成1000份,可采用has...原创 2019-02-26 21:57:39 · 342 阅读 · 0 评论 -
数据结构经典算法源码
1. 冒泡排序public static void bubbleSort(int[] arr) { for (int i = 0; i < arr.length; i++) { for (int j = 0; j < arr.length - i - 1; j++) { // 每次把最大的数放到最右边 if (arr[j] > arr[j + 1]) {...原创 2019-03-10 15:53:07 · 959 阅读 · 0 评论