自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 资源 (1)
  • 收藏
  • 关注

原创 es示例。。。

es示例

2022-11-16 16:09:54 682 1

原创 多路查找树:B-tree/b+tree

多路查找树:结点可以存储多个元素;一个结点的孩子数可以多余2个4种特殊形式:2-3树:每一个结点都具有2个孩子(称为 2结点)或者3个孩子(称为 3结点)(不能出现一个结点只有1个或超过3个孩子的)1、一个 2结点 包含一个数据元素B,左子树小于B,右子树大于B2、一个 3结点 包含一小B一大D 2个数据元素和3个孩子,左子树小于较小数据元素D的元素右子树大于较大元素B的数据元素,中间子树包含介于两数据元素B\D之间的元素3、所有的叶子都在同一层次上2-3-4树:对2-3树的扩展1、

2020-09-30 15:13:24 1462

原创 算法-分块索引和倒排索引

分块索引:块与块是有序的 ,块内无序的;最大值也要小于最小值倒排索引:对文章分词,分词结果都索引到这篇文章

2020-09-28 16:45:29 209

原创 算法-二叉排序树

二叉排序树:第一个元素为根root,大于root的作为右结点,小于的作为左结点;依次类似安排public class BST { public static void main(String[] args) { List<BitNode> nodeList= Stream.of(62,88,58,47,35,73,51,99,37,93).map(BitNode::new).collect(Collectors.toList()); BitNode ro

2020-09-28 16:39:33 127

原创 算法-有序表查找

public class SortSearch { int [] example={1,11,23,34,36,38,44,46,49,50,56,57,67,69,71,72,75,78,83,86,89,91,93,97,99,100}; public static void main(String[] args) { new SortSearch().fibonacci(100); } //斐波那契查找 public void fibonacc

2020-09-25 09:33:27 137

原创 数据结构-图-关键路径

用边表示活动的网,变得权值表示活动持续时间,活动之间制约关系没有矛盾的基础上用顶点表示事件;用有向边表示活动,权值表示活动的持续时间求出到达各个状态(顶点)的最早时间(按最大计)要从源点开始向汇点顺推:求出到达各个状态(顶点)的最晚时间(按最小计)过程是要从汇点开始向源点逆推边的最早时间 = 这条边的尾顶点的最早时间边的最晚时间 = 这条边的头顶点的最晚时间-边的权值边的最早时间==边的最晚时间 则是关键路径...

2020-09-23 17:07:12 296

原创 数据结构-图-求最短路径-迪杰斯特拉/弗洛伊德

public class ShortTree { private static final int infinity=65535; private String [] topPoint={"0","1","2","3","4","5","6","7","8"}; private int length=9; private int[][] sides={ {0, 1, 5, infinity, infinity, infinity, infinity,

2020-09-18 16:16:28 154

原创 最小生成树-普里姆算法\克鲁斯卡尔算法

/** * 最小生成树:找寻图中连接所有顶点的最短距离的路径 * 普里姆算法(prim)和克鲁斯卡尔算法(kruskal) * v0 v1 v2 v3 v4 v5 v6 v7 v8 * v0 0 10 # # # 11 # # # * v1 10 0 18 # # # 16 # 12 * v2 # #

2020-09-14 17:02:09 121

原创 数据结构:图

/** * 图:G(V,E) V顶点,E边 有向边<a,d> 无向边(a,d) * 无向完全图:任意2个顶点之间都存在边。共(n*(n-1) / 2)条边 * 有向完全图:任意2个顶点之间都存在方向互为相反的2条弧。 共 n*(n-1)条边 * 权:图中边带数字的 * 度:相邻边的数目。边数=每个顶点度的和*2 。 * 无向图的度:TD(V) * 有向图的度:入度ID(V)=出度OD(V) TD(V)=ID(V)+OD(V) * 连通分量:是一个图的子图;

2020-09-11 16:09:27 135

原创 赫夫曼编码

摘自《大话数据结构》/** * 赫夫曼树,压缩和解压缩在此基础上研究出来 * 带权路径长度(WPL)最小的二叉树称为赫夫曼树 * 算法:1、给定的n个权值{w1....}构成n颗二叉树的集合F={T1....Tn},(从小到大排序) * 其中每颗二叉树Ti中只有一个带权为w1根节点,其左右子树为空 * 2、在F中选择选2颗根结点的权值最小的树作为左右子树构造一颗新的二叉树K, * 且置新的二叉树的根结点的权值为其左右子树上权值之和 * 3、在F中删除这

2020-09-09 16:50:01 59

原创 数据结构-树(1)

/** * 计算机的存储结构有顺序存储和链式存储 * 结点的度:结点拥有的子树数 * 叶结点/终端结点:度为0的结点 * 分支结点/非终端结点:度不为0 * 内部结点:除根结点外的分支结点 * * 树的表示:双亲表示法、孩子表示法、孩子兄弟表示法 * 二叉树:每个结点最多2颗子树;左右有顺序;即使只有一颗子树,也要区分左右 * 特殊二叉树: * 斜树:左斜树、右斜树 结点的个数与二叉树的深度相同 * 满二叉树:所有结点都存在左子树和右子树,并且所有叶子都在同一层上

2020-09-09 16:48:01 63

原创 KMP

KMP模式匹配计算next值:下标从0开始,当j=x,取0-(j-1)的字符,判断前缀和后缀字符是否相等,相等的字符个数字符的前缀是值不包含最后一个字符在内的所有,前缀和后缀最大长度为k 的相同前缀后缀如:t=“aaaaa aab” 当j=4 t4=aaaa 前缀aaa 后缀aaa next=3public void getNext(String t,int next[]){ int i; i=1; next[0]=0; whil.

2020-09-07 15:53:48 76

原创 CompletableFuture学习

//supplyAsync 和 runAsync 区别在前个有返回值,后一个没有返回值 public static void supplyAsync() throws ExecutionException, InterruptedException { ExecutorService executorService = Executors.newCachedThreadPool();// executorService.submit(() -> {//

2020-09-04 11:00:11 86

原创 linux全替换

find . -name “*.sh” -print | xargs perl -pi -e ‘s/A/B/g’

2020-02-14 11:04:30 150

原创 docker常用命令

docker images 显示本地所有镜像docker rmi 镜像ID ;删除本地镜像docker build -t ss:0.0.1 dockerfile所在目录 ;-t 镜像打tag 创建本地镜像docker push host/ss:0.0.1 推送本地镜像到镜像仓库 host镜像仓库地址,需 要现在机器上登录docker run -d -p host:cohost...

2020-01-15 11:52:14 95

转载 Elasticsearch

反向索引又叫倒排索引,是根据文章内容中的关键字建立索引。搜索引擎原理就是建立反向索引。Elasticsearch 在 Lucene 的基础上进行封装,实现了分布式搜索引擎。Elasticsearch 中的索引、类型和文档的概念比较重要,类似于 MySQL 中的数据库、表和行。Elasticsearch 也是 Master-slave 架构,也实现了数据的分片和备份。Elasticsea...

2020-01-14 16:13:20 100 1

原创 springboot异步记录日志

<appender name="CONSOLE-LOG" class="ch.qos.logback.core.ConsoleAppender"> <layout class="ch.qos.logback.classic.PatternLayout"> <pattern>[%d{yyyy-MM-dd' 'HH:mm:ss.sss}] ...

2019-11-27 16:30:26 1976

原创 记录一次SQL优化

先说下背景:广告表ad 城市表city_area_code 按城市显示广告关系表 ad_r_area_Code(索引是ad_id 、area_code)管理平台有个页面显示列表,如图:之前用的一个大的SQL去写SELECT a.id, a.title, GROUP_CONCAT(c.`name` SEPARATOR '、') AS area_code_nameFROM ad a...

2019-06-27 11:11:08 160

转载 Java代码读写分离

转载原文代码环境是springboot+mybatis+druib连接池。想要读写分离就需要配置多个数据源,在进行写操作是选择写的数据源,读操作时选择读的数据源。其中有两个关键点:如何切换数据源如何根据不同的方法选择正确的数据源1)、如何切换数据源通常用springboot时都是使用它的默认配置,只需要在配置文件中定义好连接属性就行了,但是现在我们需要自己来配置了,spring是支持...

2019-06-26 14:07:07 1665

原创 MySQL 5.7 配置主从

安装MySQL,参考安装MySQL5.7主从复制有2种,一种是基于语句复制,另一种是基于行,5.7版本的默认是基于行复制配置主数据库修改主数据库配置/etc/my.cnf,不同的linux,配置文件所在位置不同server-id=1 #设置server-id 数字 唯一,不可重复,log_bin=master-bin #开启二进制日志expire_logs_days=10ma...

2019-06-26 13:49:20 115

原创 Ubuntu 和 Red Hat 的 MySQL 安装

安装Ubuntu安装apt-get mysql-server非root用户使用sudo apt-get mysql-server安装过程中会让你设置mysql账号的root账号的密码安装完后会自动启动服务;#重启命令service mysql restart / stop / startRed hat上用rpm安装:cd /home#创建目录mkdir mysql...

2019-06-26 11:16:24 168

原创 mybatis resultMap 用法

<resultMap id="PromotionDetailResultMap" type="PromotionDetailResult"><!--ID比不可少--> <id property="promotionId" column="promotion_id"/> <!--PromotionDetailResult 类中要有...

2019-04-22 10:00:09 167

原创 枚举使用

@RunWith(JUnit4.class)public class EnumTest { @Test public void te(){ OrderStutasEnum ok=OrderStutasEnum.OK; System.out.println(ok.getId()+"="+ok.getVal()+"="+ok.toString())...

2019-04-19 16:17:42 76

转载 Java 8 中的 Streams API 详解

本文转载于陈争云,占宇剑和司磊的《Java8中的Streams API详解》一文。Stream 作为 Java 8 的一大亮点,它与 java.io 包里的 InputStream 和 OutputStream 是完全不同的概念。它也不同于 StAX 对 XML 解析的 Stream,也不是 Amazon Kinesis 对大数据实时处理的 Stream。Java 8 中的 Stream 是对集...

2019-04-02 15:16:10 107

转载 JAVA类加载器

类的生命周期 加载 连接(验证,准备,解析) 初始化 使用 卸载启动类加载器(Bootstrap ClassLoader): 前面已经介绍过,这个类将器负责将存放在<JAVA_HOME>\lib目录中的,或者被-Xbootclasspath参数所指定的路径中的,并且是虚拟机识别的(仅按照文件名识别,如rt.jar,名字不符合的类库即使放在lib目录中也不会被加载)类库加载到虚拟机内存中。扩展类

2017-12-02 10:01:57 140

翻译 Java类型转换

《在将int或long类型窄化转换为整数类型T的时候,转换过程仅仅是简单地丢弃除最低位N个字节以外的内容,N是类型T的数据类型长度,这将可能导致转换结果与输入值有不同的正负号。这点很容易理解,因为原来符号位处于数值的最高位,高位被丢弃之后,转换结果的符号就取决于低N个字节的首位了。 在将一个浮点值窄化转换为整数类型T(T限于int或long类型之一)的时候,将遵循以下转换规则: 如果浮点值是Na

2017-11-29 09:10:20 242

原创 非对称加密DH/RSA/ElGamal

非对称加密DH/RSA/ElGamal

2017-08-12 11:04:37 470

原创 搜索目录下所有文件内容是否包含指定的关键词

搜索目录下所有文件内容是否包含指定的关键词import java.util.*;

2017-08-02 19:59:30 3795

原创 集合与数组的转换

集合与数组的转换

2017-07-24 19:48:10 217

原创 LinkedHashMap 实现“最近最少使用”的原则,PriorityQueue优先级

LinkedHashMap 实现“最近最少使用”的原则 accessOrder;优先级队列PriorityQueue

2017-07-14 20:05:14 1831

原创 泛型类、泛型方法、通配符泛型、通配符的超类型限定

泛型类、泛型方法、通配符泛型、通配符的超类型限定

2017-07-09 18:00:15 2020

原创 代理Proxy.newproxyinstance

代理 proxy newproxyinstance

2017-07-06 20:32:08 701

原创 数据库事务隔离级别

mysql的默认级别时可重复读,其它的时读已提交

2017-07-02 18:33:58 186

原创 水印图片

平铺水印图片,直接时代码

2017-07-02 18:29:28 262

转载 分布式ID生成器

几乎所有的业务系统,都有生成一个唯一记录标识的需求,例如: 消息标识:message-id 订单标识:order-id 帖子标识:tiezi-id这个记录标识往往就是数据库中的主键,数据库上会建立聚集索引(cluster index),即在物理存储上以这个字段排序。这个记录标识上的查询,往往又有分页或者排序的业务需求,例如: 拉取最新的一页消息 sel

2017-06-29 17:49:33 662

原创 彩票中奖几率计算公式

在n个数中选择k个来抽奖,那么中奖几率为n*(n-1)(n-2)……..(n-k+1) / 1*2*3*……k

2017-06-26 20:26:23 14914

原创 格式化日期

格式化日期,不使用SimpleDateFormat

2017-06-26 20:04:19 185

原创 移位运算-2高效的乘除运算

移位运算,右移一位相当于除2,右移n位相当于除以2的n次方。x >>> n   c语言中移位运算只能用于整数,整数A左移1位得到的结果为A*2,右移1位为A/2取整public static void main(String[] args) { System.out.println(21 >>> 1);//21/2 System.out.println(21 >>>

2017-05-06 08:26:21 854

原创 SolrCloud集群部署

1、 下载http://apache.fayea.com/lucene/solr/6.3.0/solr-6.3.0.tgz 2、 解压tar –zxv –f solr-6.3.0.tgz 3、 配置zookeeper 地址:vim ./solr-6.3.0/bin/solr.in.sh 。ZK_HOST=你的zookeeper 地址 4、 运行:./solr-6.3.0/bin/so

2016-12-16 17:30:24 329

转载 关于Parse字符串为时间一次被坑经历

**作者:明翼(XGogo) 出处:http://www.cnblogs.com/seaspring/** 在Java代码中发现一个bug,就是本来更新为时间的内容更新为一些奇怪的内容,比如20819这种形式,本来更新的时间都是近期不会超过一年,为什么会出现这种情况,非常奇怪,遂调试下代码,跟踪发现要匹配的字符串内容和预想的日期格式不符合,代码处理这种情况是抛出异常,然后用今天的日期替代,

2016-12-16 17:09:52 561

IK Analyzer 中文分词

用于Lucene全文搜索中的中文分词,IK Analyzer源码包

2014-11-06

空空如也

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

TA关注的人

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