- 博客(58)
- 资源 (1)
- 收藏
- 关注
原创 Hive SQL 优化实践
Hive SQL 优化实践文章目录Hive SQL 优化实践前言背景1. Join无关的优化1.1 group by 引起的优化1.2 count distinct优化1.3 map端数据倾斜2.Join相关优化2.1大表Join小表2.2大表Join大表(两个表都超过了1GB)2.2.1.间接转换为Map Side Join适用场景步骤2.2.2.Join时用case when 语句适用场景步骤2.2.3倍数B表,再取摸Join(1)通用方案(2)专用方案2.2.4动态一分为二前言我们在编写Hive
2020-12-13 20:04:37
253
原创 Mac下iterm2配置rz
网上找了一圈配置方法都不对,参照下面的教程成功解决https://github.com/xmvper/iterm2-zmodem[添加链接描述]如果配置完后显示permission deniedchmod 777 iterm2-send-zmodem.shchmod 777 iterm2-recv-zmodem.sh修改配置后重启iterm2,成功...
2020-05-29 19:38:55
927
原创 Git笔记
文章目录简介Git 命令创建仓库添加到暂存区提交到当前分支查看当前分支与工作区文件的区别回退到当前分支中的上一个版本撤销修改删除文件添加远程仓库克隆仓库分支Bug管理feature管理多人开发rebase(变基)tag标签简介Git是用C开发的分布式的版本控制系统。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WgfaGqBp-1584438337936)(/...
2020-03-17 17:47:44
176
原创 剑指offer题解61-67(Java)
文章目录61.序列化二叉树*思路62.二叉搜索树的第k个节点63.数据流中的中位数64.滑动窗口的最大值65.矩阵路径66.机器人的运动范围67.剪绳子*61.序列化二叉树*请实现两个函数,分别用来序列化和反序列化二叉树二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式...
2020-03-12 14:51:48
202
原创 剑指offer题解56-60(Java)
文章目录56.删除链表中的重复节点57.二叉树的下一个节点58.对称二叉树59.之字形打印二叉树60.二叉树打印成多行56.删除链表中的重复节点在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5/* public clas...
2020-03-10 17:37:42
114
原创 深度学习导论-BP神经网络识别书写数字(Python实现)
BP简介Bp神经网络的一大特点就是:信号前向计算,误差反向传播。根据这一特点来编写网络标准BP算法流程学习完一个样本就计算每层的误差信号并调整权重批训练BP算法流程学习完所有样本,根据总误差计算各层的误差信号并调整权重代码本文使用多层bp神经网络进行手写数字的识别。采用标准bp算法流程,但训练结束条件为达到训练次数就结束。class BPNeuralNetwork(object...
2020-03-10 14:31:06
1314
2
原创 剑指offer题解51-55(Java)
51.构建乘积数组给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…*A[i-1]A[i+1]…*A[n-1]。不能使用除法。(注意:规定B[0] = A[1] * A[2] * … * A[n-1],B[n-1] = A[0] * A[1] * … * A[n-2];)代码简单粗暴法import java.util...
2020-03-05 20:42:31
134
2
原创 Flume简介、基本概念
1.定义Flume(水道 )是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。Flume基于流式架构,灵活简单。最主要的作用是实时读取服务器本地数据到HDFS组成架构组件AgentAgent是一个JVM进程,它以事件的形式将数据从源头送至目的,是Flume数据传输的基本单元。Agent主要有3个部分组成,Source、Channel、Sink。...
2020-03-04 14:10:13
1383
原创 深度学习导论--线性神经网络、delta学习规则、梯度下降法(python实现)
线性神经网络与感知器区别感知器激活函数输出两种值,使用sign函数调整权值线性神经网络激活函数(线性函数)输出任意值,使用LMS(最小均方)调整权值和偏置purelin函数(y=x)LMS学习规则:最小均方规则[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KB9NIG2m-1583238787137)(/Users/pengzijun/Libr...
2020-03-03 20:33:37
920
原创 深度学习导论——单层感知器(python)实现
神经网络发展历程单层感知器是最简单,最基本的单层感知器结构学习规则注意这里公式W.T*X,而应该是X*W.T,左乘右乘结果不同学习率学习率决定了每次权值更新的大小,学习率过大,会一下子改变过多,不稳定过小,权值改变小,学习慢,迭代次数多η学习率(0<η≤1)收敛条件通常可以是:误差小于某个预先设定的较小的值。两次迭代之间的权值变化已经很小。设定最大迭代...
2020-03-03 20:30:46
710
原创 剑指offer题解46-50(Java)
46.孩子们的游戏每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的下一个小朋友开始,继续0…m-1报数…这样下去…直到...
2020-02-23 11:22:53
317
原创 Zookeeper简介
Zookeeper是一个开源的、分布式的应用程序协调服务。它提供了一套原语集,通过 这套原语集,可以实现更高层次的同步服务、配置管理、集群管理以及命名管理。一句话:Zookeeper就是保证数据在集群中的事务一致性。zk是集群部署的(通常有奇数个节点)。(3,5,7,9)集群之间是数据传递的。集群之间传递数据必须要保证事务的一致性。提供中心化的服务故障发现服务。架构Zoo...
2020-02-22 17:45:16
463
原创 剑指offer题目解答41-45(Java)
41.和为s的连续正数序列小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列? Good Luck!输出描述:输出所有和为S...
2020-02-22 10:41:58
126
原创 分布式面向列的数据库--Hbase
概述HBase是一个构建在Hadoop之上的高可用、高性能、多版本的分布式NOSQL数据库。通过在廉价服务器上搭建大规模结构化存储集群,提供海量数据高性能的随机读写能力。NoSQL,指的是非关系型的数据库。NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称。NoSQL用于超大规模数据的存储。(例如谷歌或Facebook每天为他们的用户收集万...
2020-02-21 17:38:47
1448
原创 剑指offer题解37-40(Java)
37.数字在排序数组中出现的次数统计一个数字在排序数组中出现的次数。代码暴力遍历法public class Solution { public int GetNumberOfK(int [] array , int k) { int ans=0; int n=array.length; for(int i=0;i<n;i++...
2020-02-21 15:47:21
118
原创 基于Hadoop的数据仓库Hive&HiveQL
Hive简介Hive是构建在Hadoop之上的数据仓库平台。Hive是SQL解析引擎,它将SQL语句转译为MapReduce作业,并在Hadoop上运行。Hive表是HDFS的文件目录,一个表对应一个目录名,如果有分区的话,则分区值对应子目录。对比Mysql随着数据量增加某些查询需要几个小时甚至几天才能完成。当 数据达到1T时,MySql进程跨掉Oracle可以支撑几个T的数据...
2020-02-21 09:28:32
555
原创 剑指offer题解31-36(Java)
31.整数中1出现的次数*求出113的整数中1出现的次数,并算出1001300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数(从1 到 n 中1出现的次数)代码简单粗暴法,比较low.转换成字符数组再遍历看有多少个...
2020-02-20 16:17:54
180
原创 Hadoop资源管理器-YARN
Hadoop1.0创建job,获取jobID。检查作业的输出说明并计算作业的输入分片,然后将运行作业所需要的资源都复制到以作业ID命名的目录下。提交作业,告知jobtracker作业准备执行。(submitJob()方法)初始化作业。创建一个表示正在运行作业的对象,用来封装任务和记录信息。获取客户端计算好的输入分片,然后为每 个分片创建一个map任务。在此步骤的时候 还会创建r...
2020-02-19 20:23:24
1727
原创 剑指offer题解26-30(Java)
26.二叉搜索树与双向链表*输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。代码public class Solution { TreeNode head = null; TreeNode realHead = null; public TreeNode Convert(TreeNode pRootOf...
2020-02-19 16:15:23
158
原创 Hadoop分布式计算框架MapReduce
MapReduce计算模型[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pbCoXa8F-1582036701306)(/Users/pengzijun/Library/Application Support/typora-user-images/image-20200218173122558.png)]主要由Map和Reduce两部分组成。Reduce阶段...
2020-02-18 22:40:08
425
原创 剑指offer题解21-25(Java)
21.栈的压入、弹出序列*输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)代码import java.util.Stack;public...
2020-02-18 15:52:43
447
1
原创 Hadoop分布式文件储存系统
简介一句话(官方):分布式存储系统HDFS( Hadoop Distributed File System)。 其实就是一个文件系统,类似于linux的文件系统。有目录,目录下可以存 储文件。但它又是一个分布式的文件系统。基本原理将文件切分成等大的数据块,分别存储到多台机器上。每个数据块存在多个备份。 将数据切分、容错、负载均衡等功能透明化。可将HDFS看成是一个巨大、具有容错性的磁...
2020-02-17 21:48:36
3144
原创 剑指offer题解16-20(Java)
16.合并两个排序的链表输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。代码/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class...
2020-02-17 16:50:10
103
原创 剑指offer题解11-15(java)
11.二进制中1的个数输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。代码理解题意的时候,出现了小偏差,输入的已经是二进制数,不需要转换。无脑解法可以转换成字符串进行判断链接:https://www.nowcoder.com/questionTerminal/8ee967e43c2c4ec193b040ea7fbb10b8?answerType=1&f=discu...
2020-02-16 19:48:01
111
原创 剑指offer题解6-10(Java)
剑指offer题解6-106.旋转数组的最小数字把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。代码暴力遍历全部元素import java.util.Arr...
2020-02-16 15:41:24
228
原创 剑指offer题解1-5(Java)
剑指offer题解1-51.二维数组查找在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。代码:public class Solution { public boolean Find(int target, int [][] array) {...
2020-02-16 09:54:49
345
原创 2019第十届蓝桥杯省赛JavaA组题解
第十届蓝桥杯省赛JavaA组题解试题 A: 平方和 本题总分:5 分【问题描述】小明对数位中含有 2、0、1、9 的数字很感兴趣,在 1 到 40 中这样的数包 括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574,平方和是 14362。 注意,平方和是指将每个数分别平方后求和。请问,在 1 到 2019 中,所有这样的数的平方和是多少?思路转换成strin...
2020-02-15 19:53:39
4620
3
原创 Scala课程习题解答
Scala课程习题解答1.基础(1)用体重和身高计算BMI值,它需要满足下面的测试:(体重(公斤) / 身高2(cm2)例如:一個52公斤的人,身高是155厘米,則BMI为:52(公斤)/1.552 (cm2 )= 21.6)小于18.5 体重过轻, 18.5~24 正常 大于 24 过重.val normal = bmiStatus(75, 183)Assert(“Normal we...
2020-02-13 20:22:57
2163
1
原创 2018年蓝桥杯第九届javaA组省赛题解
蓝桥杯第九届省赛题解1.标题:分数1/1 + 1/2 + 1/4 + 1/8 + 1/16 + …每项是前一项的一半,如果一共有20项,求这个和是多少,结果用分数表示出来。类似:3/2当然,这只是加了前2项而已。分子分母要求互质。注意:需要提交的是已经约分过的分数,中间任何位置不能含有空格。请不要填写任何多余的文字或符号。思路手动计算:等比数列,再约分编码:求和约...
2020-02-10 16:24:49
1416
5
原创 Mac os 快速安装homebrew,解决官方安装速度慢的问题
Mac os Catalina 快速安装homebrew直接使用官网给出的安装脚本,安装速度很慢,基本上都是安装超时而失败,使用以下方法即可快速安装。获取安装脚本把官网给的脚本拿下来curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install >> brew_install修改为国内...
2020-02-09 10:43:47
2703
1
原创 2017第八届蓝桥杯省赛javaA组题解
第八届蓝桥杯省赛javaA组题解1.标题:迷宫X星球的一处迷宫游乐场建在某个小山坡上。它是由10x10相互连通的小房间组成的。房间的地板上写着一个很大的字母。我们假设玩家是面朝上坡的方向站立,则:L表示走到左边的房间,R表示走到右边的房间,U表示走到上坡方向的房间,D表示走到下坡方向的房间。X星球的居民有点懒,不愿意费力思考。他们更喜欢玩运气类的游戏。这个游戏也是如此!开始...
2020-02-07 20:01:05
781
原创 Scala集合笔记
Scala集合笔记Scala集合可变集合不可变集合(可以安全地并发访问)默认都是不可变集合,Scala集合都提供了可变和不可变的版本Scala的集合有三大类:序列Seq(有序、线性)、集Set、映射Map(Key->Value,都实现了iterable特质Scala 数组和java 数组可以互操作遍历集合元素for(element<-array)scala...
2020-02-05 23:29:06
184
原创 Scala函数笔记
Scala 函数笔记作为面向函数的编程语言,scala函数中传入的参数是不可以直接修改的方法vs函数方法可以作为一个表达式的一部分出现(调用函数并传参),但是方法(带参方法)不能作为 最终的表达式,但是函数和无参方法可以作为最终的表达式出现。参数列表对于方法是可选的,但是对于函数参数列表是强制的 方法可以没有参数列表,参数列表也可以为空;而函数必须有参数列表(也可以为空)。方...
2020-02-04 21:10:47
211
原创 Scala面向对象笔记
Scala面向对象类一个源文件中可以包含很多类,并且可以都是public级别getter 和 setter(classDemo -> Course )在构造器中定义 var 属性,默认会生成get 和 set 方法定义 val 属性 默认生成get 方法构造函数(primary constructor & auxiliary constructor)主构造器紧...
2020-02-02 10:54:57
192
原创 Scala基础笔记
Scala基础简介Scala代码都需要通过编译器转换成字节码在java虚拟机上运行,scala可以无缝调用java代码。Scala 是面向对象的编程语言,同时也是函数式编程。(fp)静态类型语言,定义变量时,需要定义类型, 尽管看起来像是动态类型语言。在函数式语言中,函数作为一等公民,可以在任何地方定义,在函数内或函数外,可以作为函数的参数和返回值,可以对函数进行组合...
2020-01-31 17:29:10
227
原创 2016第七届蓝桥杯javaA组省赛题解
第七届蓝桥杯javaA组省赛题解1.煤球数目有一堆煤球,堆成三角棱锥形。具体:第一层放1个,第二层3个(排列成三角形),第三层6个(排列成三角形),第四层10个(排列成三角形),…如果一共有100层,共有多少个煤球?请填表示煤球总数目的数字。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。思路:直接计算 public static void main(S...
2020-01-30 21:40:53
466
原创 2015校内选拔赛JAVA A组
2015校内选拔赛JAVA A组1.一个串的子串是指该串的一个连续的局部。如果不要求连续,则可称为它的子序列。比如对串: “abcdefg” 而言,“ab”,“abd”,“bdef” 等都是它的子序列。特别地,一个串本身,以及空串也是它的子序列。对两个串而言,可以有许多的共同的子序列,我们关心的是:它们所共同拥有的长度最大的子序列是多长。以下代码实现了这个问题的求解。请填写划线部分缺失的代...
2020-01-27 19:56:34
271
原创 快学Scala 第一章课后练习
1.直接显示int 3,可能是打开方式不对其实是3. tab给出函数提示2.val a= Math.sqrt(3)3-a*a运行结果:3.是val,无法更改4.5.找到10 、2 中较大的数6.var res=BigInt(2);for (i <-1 to 1024){res=res *res;}print(res...
2020-01-21 16:48:42
181
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人