- 博客(101)
- 问答 (6)
- 收藏
- 关注
原创 142. 环形链表 II + 287. 寻找重复数
142. 环形链表 II给定一个链表,返回链表开始入环的第一个节点。如果链表无环,则返回null。快慢指针走到相等,然后再从头节点,慢节点一起走,一直走到相交的地方class Solution: def detectCycle(self, head: ListNode) -> ListNode: slow,fast = head,head while fast and fast.next: fast = fast.ne..
2020-05-26 19:57:42
275
原创 bfs 和 dfs 汇总
1.dfs(深度优先搜索)就是暴力把所有的路径都搜索出来,它运用了回溯,保存这次的位置,深入搜索,都搜索完了便回溯回来,搜下一个位置,直到把所有最深位置都搜一遍,要注意的一点是,搜索的时候有记录走过的位置,标记完后可能要改回来;也可以递归处理左右子节点,不需要回溯257. 二叉树的所有路径给定一个二叉树,返回所有从根节点到叶子节点的路径。class Solution: def dfs(self,root,path,result): if not root:
2020-05-24 21:31:29
298
原创 双指针 滑动窗口题目汇总
3.无重复字符的最长子串给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。class Solution: def lengthOfLongestSubstring(self, s: str) -> int: if len(s)<=1: return len(s) res = 0...
2020-05-23 12:17:10
269
原创 构造二叉树汇总
Lc 105.从前序与中序遍历序列构造二叉树根据一棵树的前序遍历与中序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出前序遍历 preorder =[3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]递归求解,把中序遍历的值和下标存入hash表中:# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# ..
2020-05-22 13:45:23
235
原创 Lc42 接雨水
从左到右扫描记录当前位置的最大值,存入数组A从右到左扫描记录当前位置的最大值,存入数组BA,B对应位置的较小值减去雨水量,就是当前位置可以接的雨水class Solution: def trap(self, height: List[int]) -> int: if not height or len(height) == 0: return 0 lr,rl =[0]*len(height),[0]*len
2020-05-20 20:18:10
300
原创 回文字符串判断汇总
先写一个单独验证回文字符串的函数A,然后判断的时候如果不相等则调用A判断 [i+1,j] 或者 [i,j-1]是否为回文class Solution: def judgestr(self,s,i,j): while i<j: if s[i] != s[j]: return False i+=1 j-=1 return True
2020-05-20 09:57:20
600
原创 Lc200 小岛数量
每次碰到‘1’就用DFS遍历联通的1,把遍历的1标记为已访问; dfs单独写成一个函数class Solution: def _init_2d(self,row,col): d= [] for i in range(row): d.append([]) for j in range(col): d[i].append(False) return d .
2020-05-19 19:20:01
178
原创 LC146. LRU缓存
usedlist保存访问的顺序, capacity保存lru的容量,mapping保存映射的数组class LRUCache: def __init__(self, capacity: int): self.usedlist = [] self.capacity = capacity self.mapping = {} def get(self, key: int) -> int: if not self.map
2020-05-18 17:16:16
172
原创 课程安排汇总
lc 210把课程关系转成有向图,对图进行深度优先遍历,checked标记已经访问过的节点,order保存访问顺序也用到了回溯算法:
2020-05-18 10:33:28
275
原创 Lc 反转链表【递归】
206. 反转链表: def reverseList(head): pre = None p = head while p: nextNode = p.next p.next = pre pre = p p = nextNode return pre
2020-05-16 10:22:01
213
原创 前缀和的经典题目
leet560求和等于 K 的子数组数量(1)暴力解法(2)前缀和sum(i~j) = s(j) - s(i-1) = ks(j) - k = s(i-1)保存三个状态: sum,sum-k,cntdef subarraySum(self, nums: List[int], k: int) -> int: if not nums or len(nums) == 0: return 0 mapping = {0:.
2020-05-15 15:42:36
1190
1
原创 7.1 Spring Security
Spring Security是一个专注于为java应用程序提供身份认证和授权的框架,它的强大之处在于可以轻松拓展以满足自定义的需求特征:对身份的认证和授权提供全面,可拓展的支持 防止各种攻击,如会话固定攻击、点击劫持、csrf攻击 支持与servlet API、Spring MVC等web技术集成Spring MVC 的核心 DispatcherServlet,所有请求都会发给Di...
2019-11-08 22:54:00
135
原创 6.3 开发社区搜索功能
搜索服务:1) 帖子保存到es服务器2)从es服务器删除、搜索帖子发布事件:发布帖子时,将贴子异步提交到es服务器增加评论时,帖子异步提交到es服务器在消费组件增加一个方法,消费贴子发布事件...
2019-11-07 23:23:11
347
原创 6.2 Spring整合Elasticsearch
1. 引入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId></dependency>2. 配置Es# Elas...
2019-11-07 21:33:44
332
原创 6.1 Elasticsearch入门
[0~4:12]简介:一个分布式,restful风格的搜索引擎 支持对各种数据类型的检索 搜索速度快,可以提供实时的搜索服务 便于水平拓展,每秒处理PB级别的海量数据术语:索引、类型、文档(json结构)、字段; 分别和MySQL的数据库,表,一行或者一条数据,一列集群、节点、分片、副本;集群-》分布式部署分片是对索引进一步的划分,副本是对分片的备份es6...
2019-11-07 05:42:06
169
原创 第三课 Spring MVC
1. http:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Overview2. 三层架构: 表现层,业务层,数据访问层3. MVC: Model(模型层),View(视图层),Controller(控制层) spring mvc解决的是视图层的问题4. DispatcherServlet:前端控制器5. Thymeleaf:...
2019-10-26 20:57:16
209
原创 第二课 Spring入门
Spring 全家桶Spring framework Spring Boot Spring Cloud Spring Cloud Data FlowSpring frameworkSpring Core:Ioc(面向对象), Aop(面向切面) Spring Data Access: Transactions, Spring Mybatis Web Servlet: Sprin...
2019-10-26 17:48:02
120
原创 项目第2节 搭建开发环境
1. maven的安装:改阿里云的镜像仓库 maven in 5 minutes:http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html maven在cmd里面编译: (1) cd 到项目下(有pom.xml)--》 mvn.compile2. Idea下载3.idea下的maven编译...
2019-10-26 16:46:43
143
原创 Spark Core
窄依赖:一个父RDD的partition的RDD只能被子RDD的partition最多使用一次宽依赖:一个父RDD的partition的RDD会被子RDD的partition使用多次coalesce vs repartitioncoalesce:用来减少分组repartition:提高并行度计数器用来计数的...
2019-05-13 20:44:17
139
原创 Spark运行架构
spark运行架构 要背下来http://spark.apache.org/docs/latest/cluster-overview.htmlSpark Application: 由一个driver和多个executors组成Application jar : package时生成的jar包Driver program :main方法里面会创建一个Spark Context...
2019-05-06 02:52:17
201
原创 Spark SQL
为什么需要SQL?SQL用于数据统计分析,关系型数据库存储的数量有限制。云化: 关系型数据库 =》 Hadoop UDF支持原有关系型数据库内置的函数简单易用,无门槛转行支持sql的大数据框架:Hive: MapReduce/Tez/Spark 原理:hive把SQL 转成了对应的底层作业,不用管转换过程Presto:京东用的Impala:为了解决hive交互式查询速度慢的问题...
2019-05-04 03:43:39
190
原创 IDEA+MAVEN开发Spark 词频统计
需要添加的依赖 <repositories> <repository> <id>cloudera</id> <name>cloudera</name> <url>https://repository.cloudera.c...
2019-05-02 22:45:31
961
原创 RDD介绍
RDD让开发者大大降低开发分布式应用程序的门槛,提高执行效率。RDD源码:https://github.com/apache/spark/tree/master/core/src/main/scala/org/apache/spark/rddRDD:弹性的分布式数据集,代表了不可变的,可分区的元素,这些元素能被并行操作。弹性:指的是spark在分布式计算的时候可以容错分布式:数据可能跨节...
2019-05-01 01:22:44
356
原创 Spark源码安装与部署
编译步骤安装JDK安装maven (需要修改maven默认存储位置)安装scala定位到spark源码mvn -Pyarn -Phadoop-2.6 -Dhadoop.version=2.6.0-cdh5.7.0 -Phive -Phive-thriftserver -DskipTests clean package或者./dev/make-distribution.sh –na...
2019-04-30 00:50:49
369
原创 Spark介绍
1. MapReduce的局限性1)繁杂 本身只有map/reduce算子(没有reduce的情况:mapjoin里只有map,没有reduce)开发层面: low-level(低层次的) ; constrained(限制多);测试:需求改动就要重新测试2)计算效率低进程级别:MapTask ReduceTask都有一堆的进程; JVM复用IO:链式(chain)作业, 网...
2019-04-29 22:05:49
373
原创 大数据面试题1
自我介绍 20-30s,先准备好大数据架构,如何做到精准一次,小文件规避(hadoop元数据存储,读写流程),不要把东西落到具体的业务hdfs里面的路径占不占meta的内存? 占,不同版本不一样 小文件会产生什么样的问题?有什么影响?yarn的工作流程spark运行模式 local local* local[2] , client和cluster的区别yarn的调度有几种?申...
2019-04-28 22:24:19
293
原创 Scala基础2
Scala连接Mysql数据库import java.sql.DriverManagerobject ScalaJDBCApp{ def main(args: Array[String]): Unit = { val url = "jdbc:mysql://117.50.6.123:3306/ruoze_d66" val user="root" val passw...
2019-04-27 04:30:55
175
原创 Scala基础1
元数据:描述数据的数据源数据:源头数据,raw,etl的源头,input的数据Scala语法1. 修饰变量val name:String = "17" //值不可以更改name = “asd” //报错 error: illegal character '\u201c'var money:Int=10000 // 只可以更改money =10 val修饰的变量不可变,v...
2019-04-22 18:12:31
291
原创 Hive UDF && hive对应的MYSQL关系表
分类:UDF:一行对一行的映射(一行进来,一行出去)UDAF:many to one 多进一出UDTF:Table-generating 一进多出 如lateral view explode()UDF的临时函数只对当前session有效...
2019-04-17 03:21:08
256
原创 Hive SQL执行流程分析
为什么Hive SQL要分析过程sql执行非常慢sql执行的步骤Predicate Push Down 和MapJoin发生在逻辑执行计划还是物理执行计划?group by的过程mapreduce count过程:split ==> (word,1)shuffle:(word,1) partition ==> reducereduce:(word,可迭代的...
2019-04-16 23:53:56
504
原创 maven编译hadoop报错
报错信息如下[ERROR] [ERROR] Some problems were encountered while processing the POMs:[FATAL] Non-resolvable parent POM for org.apache.hadoop:hadoop-main:2.6.0-cdh5.7.0: Could not transfer artifact com.clo...
2019-04-14 05:41:20
843
原创 大数据的压缩与存储
压缩压缩的好处1.提升磁盘的利用率2.加速网络传输压缩的坏处压缩解压需要消耗cpu压缩的技术有损无损压缩比源文件1.4G压缩技术剩余大小snappy701MLz4693MLZO684Mgzip447MBzip2390M压缩得越小,消耗的时间越多,速度越慢分片bzip,lzo(需要创建索引 create ind...
2019-04-14 00:48:04
1812
原创 Shell编程
把shell命令堆积到一起,是一个文本1.执行shell命令绝对路径执行,相对路径(要多加./) sh+ 路径'2.变量相关变量可以定义时可以加 ‘’ "" 或者 不加3.传递参数echo $1 echo $2echo "个数:$#"echo "参数作为一个长字符串: $*"echo "PID: $$"$1 表示第一个参数$# 表示传递...
2019-04-13 16:53:03
141
原创 Spark生产实战1
架构需要 (1)简单:一个业务使用一个框架,业务线越长,故障率越高; 一个环节要M个监控,N个警告 (2)合适自己的需求:架构需要满足自己的业务需求,不要超标 (3)可迭代离线分析的过程数据采集: flume... 数据处理: (1) ETL:数据规整,数据存放在hdfs之上; (2)数据分析:mapreduce、hive、spar...
2019-04-12 16:22:23
271
原创 hadoop之离线处理电商项目架构和实现
处理流程1.涉及的基本技术组件Hadoop:HDFS MapReduce(清洗) YARN、需要部署Hadoop集群Hive:外部表、SQL 、解决数据倾斜 、sql优化、基于元数据管理、SQL 到MR过程Flume:将数据抽取到hdfs调度:crontab、shell、AzkabanHUE:可视化的notebook,CM自带 ,排查数据2.处理流程大数据开...
2019-04-08 04:31:28
1158
原创 hadoop HA 架构
集群的好处:每一个角色都是一个进程;HDFS:NN(老大),SNN,DNYARN:RM(老大),NM老大挂了怎么办?大数据所有的组件都是主从架构的 master-slave比如,hdfs读写请求都是先NN节点,但是hbase 读和写的请求不经过老大master,建表语句经过一般配置两个NN节点(实时的,任何时刻只有一台对外,另外一台standby 做实时备份 随时...
2019-04-01 23:48:34
419
转载 二叉树的遍历代码
https://www.jianshu.com/p/456af5480cee一、先序遍历考察到一个节点后,即刻输出该节点的值,并继续遍历其左右子树。(根左右)public static void 先序非递归(TreeNode root){ Stack<TreeNode> stack = new Stack<>(); TreeNode node...
2019-03-18 18:48:18
12817
空空如也
C++中外部变量该如何正确使用?
2017-12-04
Sqrt(x) 求一个数的开方
2017-11-08
无法从静态上下文中引用非静态方法,该怎么解决?
2017-09-19
回溯是如何穷举搜索的啊?
2017-09-18
递归判断程序是否有序?
2017-09-18
spring框架报错binding.BindingException
2017-09-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人