自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(140)
  • 收藏
  • 关注

原创 基于POI的可快速定制Excel导出脚本设想

基于POI的可快速定制Excel导出脚本设想

2022-11-26 19:16:53 666 1

原创 数据库迁移工具(二)

数据库迁移工具(二)Liquibase定义数据库迁移过程  Liquibase可以使用多种格式书写迁移脚本(XML,YAML,JSON,SQL)Liquibase依赖<dependency> <groupId>org.liquibase</groupId> <artifactId>liquibase-core</artifactId></dependency>这里我没有指定版本,查看后得知自动倒入了3.8.

2021-11-22 23:26:43 843

原创 数据库迁移工具(一)

数据库迁移工具(一)Flyway定义数据库的迁移Flyway版本:5.2.4<dependency> <groupId>org.flywaydb</groupId> <artifactId>flyway-core</artifactId> <version>5.2.4</version></dependency>在使用这个版本之前首先测试了不配置版本和配置8版本的Flyway,

2021-11-21 13:19:43 1355

原创 SpringBoot事务的使用(一)

失踪人口回归了!!!!好久没有更新博客了SpringBoot事务的使用(一)背景:最开始了解事务是在做一个类似于抢购的模块,当时的场景无法通过乐观锁去解决,因此直接通过事务锁住整个模块。最近一段写代码用的事务比较多,之前没怎么认真看过对应的章节内容,用起来的时候还是稀里糊涂的,所以好好了解一下。PS:简单的基础类代码在这里就不展示了事务的基本概念在这里就不介绍了,这篇博客的主要内容是测试事务在本类方法中调用其他非事务方法的时候是否可以完成事务的回滚。展示基本代码基本的测试代码如下@Overri

2021-09-22 00:25:06 400 1

原创 多线程之K-近邻算法(二) 粗粒度并发版本

  在上一篇文章多线程之K-近邻算法(二) 细粒度并发版本中,简单的讲述了通过执行器来完成的K-近邻算法的细粒度版本,也许会有人想到这个版本的并发方案会存在一定的问题:执行的任务太多了,由于创建的执行器最大工作线程数为numThreads,因此,一个新的方案就是仅启动numThreads个任务,并将训练数据划分为numThreads个组去计算输入范例和对应组训练范例之间的距离  根据以上的设计思路,可以在之前KnnClassifierParallelIndividual算法的基础上进行修正,主要对cl

2021-02-24 22:40:43 1398

原创 多线程之K-近邻算法(二) 细粒度并发版本

多线程之K-近邻算法(二) 细粒度并发版本上一篇文章多线程之K-近邻算法(一)讲述了K-近邻算法在串行条件下的编写思路,在这篇博文中通过执行器来实现K-近邻算法的细粒度并发版本。java执行器有很多功能,在这里用到哪个再介绍哪个的功能  由上一篇博客继续展开,在这里,可以发现有以下的地方可以进行优化距离计算距离排序  在这里,需要实现KnnClassifierParrallelIndividual类,该类依旧和之前的类一样存放训练的数据集,参数k,不同的地方在于添加了执行并行任务的Thr

2021-02-23 22:41:40 206

原创 多线程之K-近邻算法(一)

多线程之K-近邻算法  之前曾经写过在MapReduce和Spark下的k近邻算法,最近在看多线程,于是也就顺便谢谢多线程下的k近邻算法  在这里直接使用UCI机器学习资源库中的Bank Marketing数据集就可(忘记有这么个玩意了),在这里依旧采用欧式距离作为指标。在这篇博文中使用Bank Marketing数据集中age,education,balance,house,duration,campaign,married这几个属性来进行测试,通过一连串的测试数据来验证判断married这个参数 

2021-02-23 00:01:07 1800 1

原创 多线程之文件搜索

多线程之文件搜索文件搜索是一个很简单的IO操作,单线程的文件搜索代码如下首先定一个公共类Result,该类主要存储搜索结果,具有两个属性,found和path,found为Boolean值,判断是否查找到文件,path文找到的文件路径package com.FileSearch;public class Result { private Boolean found; private String path; public Boolean getFound() {

2021-02-20 23:55:05 568

原创 矩阵乘法(多线程版)

矩阵乘法(多线程版)题外话家中断网,月末没有多少流量,跟随网课学习redis的任务被阻塞了,数据算法最近又不想看,看看JAVA多线程吧正题矩阵乘法是针对矩阵的基本运算之一,也是并发和并行编程中经典问题在串行的矩阵乘法运算中,核心代码就是如下内容 for(int i=0;i<rows;i++){ for(int j=0;j<col2;j++){ result[i][j]=0; for(int k=

2020-12-27 17:41:07 2498

原创 MapReduce之PageRank

MapReduce之PageRankMapReduce之PageRank简化实现  PageRank算法是用来衡量评估网页重要性或者等级的算法,Google据此表示网页的PR值,从0级到10级,级数越高说明该网页越重要。 互联网上的各个网页之间的连接关系我们都可以看成是一个有向图,对于任何网页,他们的PR值都可以表示为:Gamma公式展示Γ(z)=∫0∞tz−1e−tdt .\Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,.Γ(z)=∫0∞​tz−1e−t

2020-11-01 00:08:03 683

原创 Hihocoder-元素魔法

题目名称:元素魔法题目链接描述小Hi是一个大魔法师,会用好多好多的魔法。小Hi一直在追求最强的魔法,每天都不敢懈怠,因此,小Hi今天也在勤勉地练习着魔法。小Hi使用的魔法都是伤害类型的魔法,每次使用魔法时,小Hi会使用一定量的魔力,将这些魔力转化为不同类型的元素,再将这些元素组合起来释放。小Hi的魔法的威力和他使用的元素的比例有关,假设小Hi能操纵的元素种类为k种,第i种元素的伤害系数为wi,某次魔法使用了xi单位的第i种元素,则该次魔法的威力为 ∏xiwi (其中xi和wi都是正的实数)。小H

2020-08-15 21:42:42 272

原创 MapReduce之小文件问题

MapReduce之小文件问题     小文件在MapReduce/Hadoop环境中指文件大小远远小于HDFS块大小的文件,默认的HDFS块为64MB,因此2MB,4MB均可以看作小文件,一般情况下,Hadoop可以很好的处理大文件,不过当文件很小时,它会把每一个小文件都传递到一个map()函数中,这样做由于会产生大量的映射器导致效率并不高,要解决这个问题 ,需要将多个小文件合并为一个文件,然后在进行处理,因此,该问题的解决方案主要是通过将小文件合并成更大的文件来

2020-08-09 10:16:42 1101

原创 SpringBoot下API及数据表关系图

    这个demo是我根据之前实习的一段经历写出来的,当时有一个最重要的任务就是对api接口进行梳理,分析其执行逻辑以及调用的数据表,毕竟当时是要熟悉业务逻辑吗,所以我就一行一行的看来着, 后来我就打算做一个便捷的可视化效果,效果展示如下:    如图所示的结果是我对大学期间的一个SpringBoot课设项目解析后的可视化结果,红色部分为全部的api接口,黑色部分为数据表,中间的箭头指向表示了该接口对数据表的操作类型,如

2020-08-06 11:17:37 869 1

原创 偶树的切分

题目名称:偶树的切分题目链接:偶树的切分描述传送门输入第一行包含一个偶数N。以下N-1行每行包含两个整数a和b,表示a和b之间有一条边。对于30%的数据,1 ≤ N ≤ 20对于100%的数据, 1 ≤ N ≤ 100000输出输出最多可以切断的边数。样例输入61 23 14 11 56 2样例输出1解题思路以 fff 和 iii 点为例,假设以iii为根节点的子树有偶树个节点,假设该fff和iii节点间路径不再划分方案当中,则fff和iii一定在一个联通分量当中

2020-07-05 17:45:08 263

原创 MapReduce之幺半群

MapReduce之幺半群首先先简单介绍一些概念幺元幺元即单位元,是集合里的一种特别的元,与该集合里的运算有关。当它和其他元素结合时,并不会改变那些元素。幺半群幺半群是一个存在幺元的半群幺半群具有以下性质:闭包:对于S中的所有a和b,运算aooob的结果也在S中结合律:对于S中所有的a,b和c满足以下等式: (a∘b)∘c=(a∘(b∘c)(a \circ b)\circ c=(a\circ(b\circ c)(a∘b)∘c=(a∘(b∘c)单位元:∃eϵS:∀aϵS:e∘a=a∘e=

2020-06-27 17:01:57 1171

原创 Hihocoder-皇室成员的名字

题目名称:皇室成员的名字题目链接:皇室成员的名字描述小Ho正在学习世界历史。他发现历史上很多西方国家的皇室成员的名字都是由英文名字加罗马数字组成的,例如George IV(乔治四世)、William IV(威廉四世)、Elizabeth II(伊丽莎白二世)等。为了更好的梳理历史脉络,小Ho决定写个程序把历史书上出现过的皇室名字排序:首先按英文名字的字典序排序,如果英文名字相同,再按罗马数字从小到大的顺序排序。罗马数字表示可以参考 https://en.wikipedia.org/wiki/Rom

2020-06-21 22:32:07 177

原创 MapReduce之线性回归

MapReduce之线性回归线性回归最主要的功能是描述变量间可能的关系。其中,最常用的形式就是最小二乘拟合。下面程序的思路主要是按照最小二乘法的思路展开。样例数据线性回归分析的目标是找出与数据拟合的线性方程,在找到这个方程后就可以对模型在一定程度上作出预测,在这里使用的两个变量是一个年龄和血糖水平,如下,最终拟合成线性方程 y=ax+b病人编号年龄(x)血糖水平141902429334398420645257864071

2020-06-21 22:30:50 953 14

原创 MapReduce之皮儿逊相关系数

MapReduce之皮儿逊相关系数什么是皮儿逊相关系数皮尔逊(Pearson)相关系数可以度量两个数据集的相关关系,基本来说,皮尔逊相关系数可以解答这样的问题:能不能画折线图来表示数据。皮尔逊相关系数公式皮尔逊相关系数的计算公式有很多不同的等价形式。令x=(x1,x2,…,xn),y=(y1,y2,…,yn)x=(x_1,x_2,\dots,x_n),y=(y_1,y_2,\dots,y_n)x=(x1​,x2​,…,xn​),y=(y1​,y2​,…,yn​),则x和y的皮尔逊相关系数可表述为:

2020-05-31 11:26:40 510

原创 Hihocode-统计子目录

题目名称:统计子目录题目链接:统计子目录描述小Hi的电脑的文件系统中一共有N个文件,例如:/hihocoder/offer22/solutions/p1/hihocoder/challenge30/p1/test/game/moba/dota2/uninstall小Hi想统计其中一共有多少个不同的子目录。上例中一共有8个不同的子目录:/hihocoder/hihocoder/of...

2020-04-29 11:06:24 131

原创 Hihocoder-H国的身份证号码I

题目名称:H国的身份证号码I题目链接:描述H国的身份证号码是一个N位的正整数(首位不能是0)。此外,由于防伪需要,一个N位正整数是合法的身份证号码当且仅当每位数字都小于等于K,并且任意相邻两位数字的乘积也小于等于K。例如对于K=5, 101、211、210等都是合法的号码,而106、123、421等都是非法的号码。给定一个正整数N以及K,请从小到大输出所有合法的号码。输入两个整数N和...

2020-04-26 09:41:56 243

原创 缺失的拼图

题目名称:缺失的拼图题目链接:描述小Hi在玩一个拼图游戏。如下图所示,整个拼图是由N块小矩形组成的大矩形。现在小Hi发现其中一块小矩形不见了。给定大矩形以及N-1个小矩形的顶点坐标,你能找出缺失的那块小矩形的顶点坐标吗?输入第一行包含一个整数NNN。第二行包含四个整数(X0,Y0),(X′0,Y′0)(X0, Y0), (X'0, Y'0)(X0,Y0),(X′0,Y′0),代表大矩形...

2020-04-12 11:59:02 529

原创 SCI表示法

题目名称:SCI表示法题目链接:描述每一个正整数 N 都能表示成若干个连续正整数的和,例如10可以表示成1+2+3+4,15可以表示成4+5+6,8可以表示成8本身。我们称这种表示方法为SCI(Sum of Consecutive Integers)表示法。小Hi发现一个整数可能有很多种SCI表示,例如15可以表示成1+2+3+4+5,4+5+6,7+8以及15本身。小Hi想知道N的所有S...

2020-02-08 21:12:25 313

原创 无根树变有根树

题目名称:无根树变有根树题目链接描述给定一棵包含 N 个节点的无根树,小Hi想知道如果指定其中某个节点 K 为根,那么每个节点的父节点是谁?输入第一行包含一个整数 N 和 K。1 ≤ N ≤ 1000, 1 ≤ K ≤ N。以下N-1行每行包含两个整数 a 和 b,代表ab之间存在一条边。 1 ≤ a, b ≤ N。输入保证是一棵树。输出输出一行包含 N 个整数,分别代表1~N的...

2020-02-02 17:20:48 906

原创 Spark之K-均值算法中的一些问题

Spark之K-均值算法中的一些问题今天看了一个千人千面推荐系统的公开课,原理上来说并不难,主要是使用K均值算法,在之前学过了Spark下K均值算法之后,便尝试使用K均值算法去模拟简单的千人千面推荐系统,以后有时间在慢慢研究用户画像数据数据由用户id,该用户访问19个网站的次数组成,如下所示1,83,92,72,62,71,0,49,0,10,0,0,0,0,26,84,0,3,0,02...

2020-02-01 23:23:54 211

原创 相交的铁路线

题目名称:相交的铁路线题目链接:相交的铁路线描述H国有 n 个城市,编号1…n。城市间有n-1条铁路,保证任意两个城市可以通过铁路互达,且路线唯一。现有 m 次询问,每次询问两条铁路线是否相交(有共同经过的城市或铁路)。输入第一行一个数 T,表示数据组数对于每一组数据:第一行两个数n, m第2~n行,每行两个数x, y表示有一条铁路连接城市 x 和 y接下来m行每行四个数,x1...

2020-01-28 20:53:20 297

原创 Spark之K-近邻算法

Spark下的k邻近分类算法

2020-01-26 17:27:18 990

原创 Spark之共同好友

关于查找共同好友这部分内容,原理部分如MapReduce之共同好友 所示,下面是改为Spark程序之后的代码输入数据100,200 300 400 500 600200,100 300 400300,100 200 400 500400,100 200 300500,100 300600,100Scala程序package CommonFriendsimport org...

2020-01-23 22:44:31 398

原创 Spark之购物篮分析

Spark之购物篮分析关于购物篮分析,具体的思路可以看Mapreduce之购物篮分析 以下是编写号的Spark程序package MBAimport org.apache.spark.{SparkConf, SparkContext}import scala.collection.mutable.ListBufferobject MBA { def main(args: A...

2020-01-23 17:26:26 555

原创 spark之左外连接

spark之左外连接什么是左外连接令T1T_1T1​(左表)和T2T_2T2​(右表)是以下两个关系(其中t1t_1t1​是T1T_1T1​的属性,t2t_2t2​是T2T_2T2​的属性):    T1=(K,t1)T_1=(K,t_1)T1​=(K,t1​)    T2=(K,t2)T_2=(K,t_2)T...

2020-01-05 20:03:29 1358

原创 spark之移动平均(内存中排序)

spark之移动平均(内存中排序)关于移动平均的详细解释,可以参考MapReduce之移动平均,这里只是把程序从MapReduce换成了spark-scala,原理上没变化,不过scala写起来确实比MapReduce快package MoveAverageimport org.apache.spark.{SparkConf, SparkContext}object MovingAve...

2020-01-05 16:45:43 179

原创 spark之实时统计

spark之实时统计这篇博客其实和Spark之Spark Streaming处理文件流数据区别不是特别的大,权可以看作为毕业设计作准备的,使用了线程和通信的模式处理文件流,最后对5秒内的输入数据进行统计,代码如下package openClassimport org.apache.spark.streaming.dstream.{DStream, ReceiverInputDStream}...

2020-01-04 15:48:41 661

原创 MapReduce之简单K-mer计数

MapReduce之简单K-mer计数什么是K-mer计数K-mer是一个长度为K(K>0)K(K>0)K(K>0)的子串,K-mer计数是指整个序列中K-mer出现的频度K-mer计数应用DNA序列中的K-mer计数在和多生物信息中都是一个非常重要的步骤,主要如下:确定序列读取之间的偏差是测序错误还是序列的基因差异修正短读组装错误计算亲缘度和特异度等参数Ma...

2019-12-31 23:15:27 1003

原创 Spark之反转排序

Spark之反转排序关于反转排序的原理,可以参考之前写过的MapReduce之反转排序,这是尝试用Spark复现后的代码package OrderInversionimport org.apache.spark.{SparkConf, SparkContext}object OrderInversion { def main(args: Array[String]): Unit =...

2019-12-31 16:43:46 547

原创 MapReduce之统计和列出大图中的三角形(完)

MapReduce之统计和列出大图中的三角形在上一篇博客中,介绍了MapReduce的解决方案,在接下来展示完整代码输入数据1 22 32 42 53 44 5阶段1:mapper阶段任务生成可能的三角形路径mapper阶段编码package com.deng.Graph;import org.apache.hadoop.io.LongWritable;import...

2019-12-29 13:50:36 335

原创 MapReduce之统计和列出大图中的三角形(一)

MapReduce之统计和列出大图中的所有三角形什么是三角形图作为一个数据结构,包括一个有限的节点集,称为顶点。包括一个有限的线集,称为边,边会连接其中一些或全部节点。令T=(a,b,c)T=(a,b,c)T=(a,b,c)是图G中三个不同节点构成的一个集合,如果其中两个节点相连(a,b),(a,c)(a,b),(a,c)(a,b),(a,c),TTT就是一个三联体,如果所有三个节点都相连(a...

2019-12-29 12:31:26 415

原创 spark之非唯一键下TopN算法

spark之非唯一键下TopN算法什么是非唯一键,假设所有给定的(K,V)(K,V)(K,V)中,KKK不唯一,所以必须增加额外的步骤来确保在TopN算法中键是唯一的,举个例子,假设有三个Web服务器(服务器1,服务器2,服务器3),每个服务器采取以下形式收集URL:(URL,count)对应各个Web服务器的(URL,count)如下服务器1服务器2服务器3(A,...

2019-12-27 18:17:22 147

原创 Spark之唯一键下TopN算法

Spark之TopN算法简述Spark中的TopN算法原理上与MapReduce的TopN算法是相同的,只不过是换成了特定的Spark操作而以。输入数据1,cat1,12,cat2,23,cat3,34,cat4,45,cat5,56,cat6,67,cat7,78,cat8,89,cat9,910,cat10,1011,cat11,1112,cat12,1213,...

2019-12-26 14:39:45 193

原创 MapReduce之基于符号数据的朴素贝叶斯分类(完)

MapReduce之基于符号数据的朴素贝叶斯分类在上一篇博客MapReduce之基于符号数据的朴素贝叶斯分类(一)中,简单的介绍了朴素贝叶斯算法的原理,接下来讲述如何使用MapReduce实现朴素贝叶斯算法。输入数据还是以《Machine Learning》中的数据为例:如下所示训练数据Sunny Hot High Weak NoSunny Hot High Strong NoOve...

2019-10-03 15:16:23 1460 5

原创 MapReduce之基于符号数据的朴素贝叶斯分类(一)

MapReduce之基于符号数据的朴素贝叶斯分类简介      朴素贝叶斯(NBC)是一个基于独立假设应用的贝叶斯定理的概论分类器,NBC根据输入的一些属性将输入分配到kkk个类{C1,C2,…,CkC_1,C_2,\dots,C_kC1​,C2​,…,Ck​}中的某一类。NBC有很多应用,如垃圾邮件过滤和文档分类等。 &...

2019-10-02 23:27:11 1032

原创 MapReduce之KNN算法

MapReduce之KNN算法什么是KKK-邻近算法(KNN)KNN分类KNN距离函数KNN算法非形式化描述

2019-09-26 09:27:56 2609 10

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除