
数据结构&算法
文章平均质量分 88
复习总结
王胖泽
这个作者很懒,什么都没留下…
展开
-
数据结构&算法-----(11)海量数据处理的一些思路
数据结构&算法-----(10)海量数据处理的一些思路常见的海量处理问题何谓海量数据处理?处理海量数据问题之六把密匙密匙一、分而治之/Hash映射 + Hash_map统计 + 堆/快速/归并排序1、海量日志数据,提取出某日访问百度次数最多的那个IP2、寻找热门查询,300万个查询字符串中统计最热门的10个查询3、有一个1G大小的一个文件,里面每一行是一个词,词的大小不超过16字节,内存限制大小是1M。返回频数最高的100个词。4、海量数据分布在100台电脑中,想个办法高效统计出这批数据的TOP10原创 2020-07-10 16:01:24 · 597 阅读 · 0 评论 -
数据结构&算法-----(10)手撕LRU算法
数据结构&算法-----(10)手撕LRU算法LRU算法原理解析几种思路① LinkedHashMap实现② 双向链表+哈希表实现题目描述:LeetCode146,LRU缓存机制算法设计代码实现拓展1.LRU-K2.two queue3.Multi Queue(MQ)LRU算法对比LRU算法原理解析LRU是Least Recently Used的缩写,即最近最少使用,常用于页面置换算法,是为虚拟页式存储管理服务的。现代操作系统提供了一种对主存的抽象概念虚拟内存,来对主存进行更好地管理。他将主存原创 2020-07-10 10:10:18 · 714 阅读 · 0 评论 -
数据结构&算法-----(9)背包问题(dp&贪心)
数据结构&算法-----(9)背包问题0-1 背包多重背包完全背包去年夏天一直在便利蜂买椰奶喝,,做便利蜂的笔试题时,01背包问题死活只通过14%,这里再加深一下对背包问题的理解笔试题代码已发在牛客网上:便利蜂20200507笔试题(Java)问题描述:一个背包的总容量为V,现在有N类物品,第i类物品的重量为weight[i],价值为value[i]那么往该背包里装东西,怎样装...原创 2020-05-08 00:35:04 · 604 阅读 · 0 评论 -
数据结构&算法-----(8)单调栈和单调队列
LeetCode温习-----(8)单调栈和单调队列单调栈单调队列例题:滑动窗口的最值双端队列实现数组实现单调栈单调队列定义:队列中元素之间的关系具有单调性,而且,队首和队尾都可以进行出队操作,只有队尾可以进行入队操作。为什么要学习单调队列:对于维护好的单调队列,队内元素是有序的,那么取出最大值(最小值)的复杂度是O(1)可以用来优化DP如何维护单调队列:队尾入队的时候维护其...原创 2020-04-25 20:05:12 · 760 阅读 · 4 评论 -
数据结构&算法-----(7)二分搜索与贪心算法
LeetCode温习-----(7)二分搜索二分搜索(Binary Search)递归解法时间复杂度非递归解法例题分析一:找确定的边界例题分析二:找模糊的边界例题分析三:旋转过的排序数组例题分析四:不定长的边界二分搜索(Binary Search)二分搜索(折半搜索)的Wikipedia定义:是一种在有序数组中查找某一特定元素的搜索算法。从定义可知,运用二分搜索的前提是数组必须是排好序的。另外...原创 2020-03-13 20:45:01 · 1153 阅读 · 0 评论 -
数据结构&算法-----(6)动态规划
LeetCode温习-----(6)动态规划判断动态规划1. 是数学优化的方法——最优子结构2. 是编程的方法——重叠子问题举例 1:斐波那契数列问题。举例 2:给定如下的一个有向图,求出从顶点 A 到 C 的最长的路径。要求路径中的点只能出现一次。举例 3:归并排序和快速排序是否属于动态规划?例题分析LeetCode 第 300 题:给定一个无序的整数数组,找到其中最长子序列长度。总结解决动态规...原创 2020-03-13 12:04:22 · 1291 阅读 · 0 评论 -
数据结构&算法-----(5)图、DFS与BFS、Dijstra
LeetCode温习-----(5)深度与广度优先搜索深度优先搜索(Depth-First Search / DFS)深度优先搜索(Depth-First Search / DFS)深度优先搜索,从起点出发,从规定的方向中选择其中一个不断地向前走,直到无法继续为止,然后尝试另外一种方向,直到最后走到终点。就像走迷宫一样,尽量往深处走。DFS 解决的是连通性的问题,即,给定两个点,一个是起始点...原创 2020-03-05 23:55:02 · 740 阅读 · 0 评论 -
数据结构&算法-----(4)递归与回溯
LeetCode温习-----(4)递归与回溯递归(Recursion)递归算法解题模板LeetCode 第 91 题,解码的方法。LeetCode 第 247 题:找到所有长度为 n 的中心对称数。迭代法分析递归算法复杂度公式法分析递归算法复杂度递归和回溯的关系密不可分:递归的基本性质就是函数调用,在处理问题的时候,递归往往是把一个大规模的问题不断地变小然后进行推导的过程。回溯则是利用递...原创 2020-03-04 17:22:56 · 726 阅读 · 0 评论 -
数据结构&算法-----(3)排序算法
LeetCode温习-----(3)排序冒泡排序(Bubble Sort)插入排序(Insertion Sort)选择排序(Selection Sort)归并排序(Merge Sort)快速排序(Quick Sort)冒泡排序(Bubble Sort) public void bubbleSort(int[] nums) { //定义一个布尔变量 hasChange,用来...原创 2020-02-26 23:12:17 · 734 阅读 · 0 评论 -
数据结构&算法-----(2)高级数据结构
优先队列(Priority Queue)特点:能保证每次取出的元素都是队列中优先级别最高的。优先级别可以是自定义的,例如,数据的数值越大,优先级越高;或者数据的数值越小,优先级越高。优先级别甚至可以通过各种复杂的计算得到。如果最小键值元素拥有最高的优先级,那么这种优先队列叫作升序优先队列(即总是先删除最小的元素)如果最大键值元素拥有最高的优先级,那么这种优先队列叫作降序优先队列(即总是先删...原创 2020-02-20 22:58:00 · 603 阅读 · 0 评论 -
数据结构&算法-----(1)常用数据结构
LeetCode温习-----常用数据结构数组、字符串(Array & String)链表(LinkedList)功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UM...原创 2020-02-20 16:27:59 · 638 阅读 · 0 评论