自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

厉兵秣码

落霞与孤鹜齐飞,秋水共长天一色。渔舟唱晚,响穷彭蠡之滨,雁阵惊寒,声断衡阳之浦。

  • 博客(47)
  • 资源 (1)
  • 收藏
  • 关注

原创 PostgreSQL分表,即对表格进行分区

PostgreSQL分表,即对表格进行分区

2022-02-25 22:21:03 664

原创 二分法(数组没有重复数字和有重复数字)

二分查找(数字不重复和重复的情况)

2022-02-25 22:10:11 739

原创 zookeeper windows 伪集群搭建

zookeeper windows 伪集群搭建

2022-01-13 21:31:03 1293

原创 zookeeper windows单机版搭建

zookeeper windows 单机版搭建

2022-01-13 21:18:48 685

原创 trie字典树使用

参考一下文章,写代码自己记录下数据结构与算法:字典树(前缀树)字典树节点class TrieNode { //表示以当前单词结尾的单词数量。 int count; //表示以当前节点之前(包括当前节点)的字符串为前缀的字符串个数 // 表示以该处节点之前的字符串为前缀的单词数量 int prefix; TrieNode[] nextNode = new TrieNode[26]; public TrieNode() { coun

2021-08-01 15:39:41 100

原创 Morries法遍历二叉树

参考 树(一)——Morris 二叉树神级遍历为什么可以不采用辅助结构??首先思考一下,为什么我们要用栈或者队列来辅助我们遍历?因为二叉树的结构是,一个父节点可以轻松的找到子节点,但是子节点无法直接找到父节点。我们需要利用栈或者队列保存访问的记录,以便于我们可以回溯到父节点。Morris 遍历采用多个指针,使得通过复杂度不高的操作可以找到父节点。Morris 遍历Morris 遍历是一种节省空间复杂度的方法。将叶子节点上的空指针利用起来,指向父节点,当再次遍历到这个节点的时候再修改回来,这样最

2021-07-17 23:09:04 277 2

原创 二分查找(数字不重复和重复的情况)

怎么写出无bug的二分查找算法代码1二分查找单调递增数列中没有重复的数字 public static int binarySearch(int[] nums, int tar) { int low = 0; int high = nums.length - 1; int mid; while (low <= high) { mid = (low + high) / 2; if (

2021-06-27 00:22:01 518

原创 二叉树的递归和非递归遍历

参考文章:详解二叉树的非递归遍历二叉树的非递归遍历的思考二叉树的遍历1结构体:节点class Node{ int data; Node left; Node right; public Node(int data,Node left,Node right){ this.data=data; this.left=left; this.right=right; }}2递归遍历 //前序遍历递归

2021-06-26 21:11:05 131

原创 BM算法(字符串模式匹配)

参考的该篇文章:字符串匹配算法(BM)https://blog.csdn.net/qq_21201267/article/details/92799488详细推倒过程参考上面的链接,以下仅是个人笔记1求坏字符 //坏字符规则:获得坏字符数组 //该int[]浪费空间,可以优化,badChars[c-‘a’] = i; public static void getBc(String pat, int[] badChars) { int len = pat.leng

2021-06-24 00:13:34 257

原创 排序方法总结

时间复杂度常见的时间复杂度,按数量级递增排列依次为:常数阶O(1)、对数阶O(log2n)、线性阶O(n)、线性对数阶O(nlog2n)、平方阶O(n2)、立方阶O(n3)、k次方阶O(nk)、指数阶O(2n)。常见的算法时间复杂度由小到大依次为: c < log2N < n < n * Log2N < n^2 < n^3 < 2^n < 3^n < n!其中c是一个常量,如果一个算法的复杂度为c 、

2021-06-14 23:00:10 226 2

原创 BF和KMP算法

参考KMP算法主要是看了上面的讲解,自己做一下记录,加深印象BF算法t为目标串,p为模式串暴力解:思想:先从第一个字符开始匹配,如果p[j]==t[i],那么继续向下比较,一旦不相等,即回溯到目标串的下一个字符,重复工作。成功条件:当循环结束时,判断j的值与模式串p的长度是否相等,如果相等,说明匹配成功到了模式p的最后一个字符。返回值:返回模式串在目标串中出现的位置。方式一: public static int bf(String t,String p){ char[]

2021-06-08 00:08:25 179

原创 排序之(2)希尔排序

希尔排序链接: 插入排序.基本思想:希尔排序是希尔(Donald Shell)于1959年提出的一种排序算法。希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为“缩小增量排序”,同时该算法是冲破O(n2)的第一批算法之一。希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。基本步骤:我们来看下希尔排序的基本步骤,在此我们选择增量gap=length/2,缩

2021-01-31 23:16:29 291

原创 排序之(1)插入排序

插入排序基本思想:每一步将一个待排序的数据插入到前面已经排好序的有序序列中,直到插完所有元素为止。算法实现:直接插入排序是将无序序列中的数据插入到有序的序列中,在遍历无序序列时,首先拿无序序列中的首元素去与有序序列中的每一个元素比较并插入到合适的位置,一直到无序序列中的所有元素插完为止。对于一个无序序列arr{7,6,5,9,2}来说,我们首先先确定首元素4是有序的,然后对无序序列{6,5,9,2}遍历,6小于7则它插入到7的前面,得到{6,7,5,9,2};再继续遍历到5,5小于7,则5应该插入到7

2021-01-31 22:33:41 446

原创 Linux下如何查找自己java进程的pid(ps和jps区别)

这里先介绍可以测试的在线Linux系统:链接: https://blog.csdn.net/u014429653/article/details/99069829.1、JPS介绍jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况。用来查看基于HotSpot的JVM里面中,所有具有访问权限的Java进程的具体状态,

2020-08-23 18:55:55 7979

原创 Linux下arthas启动时找不到java进程

问题:Linux系统下arthas启动时找不到java进程,或者是jps命令找不到java进程场景:某个java进程已经启动,用jps却显示不了该进程进程号?链接: https://www.cnblogs.com/jpfss/p/11313248.html.现象:用ps -ef|grep java能看到启动的java进程,但是用jps查看却不存在该进程的id。在该情况下,jconsole、jvisualvm可能无法监控该进程,其他java自带工具也可能无法使用分析:java程序启动后,默认(请

2020-08-23 18:08:45 5570 2

原创 Arthas(阿尔萨斯)使用

这里写自定义目录标题1、背景2、Arthas 介绍3、Arthas 使用场景4、 Arthas 如何使用4.1 安装4.2 demo4.3 启动Arthas4.4 用arthas解决常见问题4.4.1 cpu占用过高4.4.2 死锁4.4.3 内存泄漏4.5其他命令4.4.1 help命令4.4.2 dashboard命令4.4.3 thread命令(查看具体线程信息使用)4.4.4 watch命令(查看类里某个方法的返回值和入参)4.4.5 trace命令(方法调用路径、耗时解析)功能快捷键合理的创建标题

2020-08-01 23:43:00 3625

原创 线程状态转换和调度

线程状态转换初始状态/新建状态(New):新创建了一个线程对象。就绪状态/可运行状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法,该状态的线程位于可运行线程池中,已经获取了运行所需要的资源,等待获取CPU的使用权。运行状态(Running):就绪状态的线程获取了CPU的使用权,执行程序代码。阻塞状态(Blocked):阻塞状态是线程因为某种原因放弃CPU的使用权,暂时停止运行。直到线程进入就绪状态,才有机会进入运行状态,阻塞的情况分为三种:(一)等待阻塞:运行

2020-07-26 22:38:27 334

原创 Java自带四种线程池使用

Java自带四种线程池使用1、线程池的概念2、使用线程池的原因3、线程池的工作机制4、 四种常见的线程池详解4.1、线程池的返回值ExecutorService简介:4.2、具体的4种常用的线程池实现如下:4.2.1、 Executors.newCacheThreadPool()4.2.2、 Executors.newFixedThreadPool(int nThreads)4.2.3、 Executors.newSingleThreadExecutor()4.2.4、 Executors.newSched

2020-07-18 23:43:00 964

原创 Java多线程详解

这里写目录标题1、程序、进程、现场1.1程序1.2进程1.3线程1.4并行和并发1.5单核CPU和多核CPU2、线程的创建和使用2.1Thread类方式一:继承Thread类匿名内部类Thread方式二:实现Runnable接口匿名内部类实现Runable新增方式一:实现Callable接口匿名类部类实现Callable接口新增方式二:使用线程池2.2继承方式和实现方式的联系和区别3 线程的调度1、程序、进程、现场1.1程序程序是为完成特定任务,用某种语言编写的一组指令的集合,即指一段静态的代码,静态

2020-07-18 17:14:52 277

原创 Required String parameter name is not present

报错:2020-06-27 19:01:31.164 WARN 12752 — [io-8080-exec-10] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required String parameter ‘name’ is not present]Resolved [org.springfram

2020-07-05 16:19:16 16674 1

原创 java发送http请求的两种方式:HTTPClient和CloseableHttpClient

java发送http请求有三种方式,除了原生连接方式HttpURLConnection,还有另外两种方式:HTTPClient和CloseableHttpClient下面分别简单介绍使用HTTPClient和CloseableHTTPClient进行Get和Post请求的方式。详情使用链接HttpClient使用commons-httpclient.jar,maven依赖如下:<!-- https://mvnrepository.com/artifact/commons-httpclient

2020-06-27 18:41:22 30817 4

原创 java实现HTTP请求

目前JAVA实现HTTP请求的方法用的最多的有两种:1、通过HTTPClient这种第三方的开源框架去实现。HTTPClient对HTTP的封装性比较不错,通过它基本上能够满足我们大部分的需求,HttpClient3.1 是 org.apache.commons.httpclient下操作远程 url的工具包,虽然已不再更新,但实现工作中使用httpClient3.1的代码还是很多,HttpClient4.5是org.apache.http.client下操作远程 url的工具包,最新的;2、通过Htt

2020-06-27 15:58:44 1127

原创 WIN10安装64位JDK14.0.1并配置环境变量

WIN10安装64位JDK14.0.1并配置环境变量1、下载JDK2、安装JDK14.0.13、配置环境变量4检测是否配置成功1、下载JDK下载路径:。下载路径下载好文件:2、安装JDK14.0.11)双击下载好的JDK进行安装,2)点击下一步,点击更改选择安装目录,我选择的是:D:\anzhuangtech\jdk_14.0.1如果想使用默认的也可以,为了减轻C盘压力,我选择其他目录安装。3)选择下一步,开始安装:3、配置环境变量通过右键计算机→属性→高级系统设置→高级→环

2020-06-14 15:11:32 2336

原创 PostgreSQL查询约束和创建删除约束

查询约束constraintSELECT tc.constraint_name, tc.table_name, kcu.column_name, ccu.table_name AS foreign_table_name, ccu.column_name AS foreign_column_name, tc.is_deferrable,tc.initial...

2020-04-19 14:58:40 6119

原创 唯一索引(unique index)的创建和使用

如果在一个列上同时建唯一索引和普通索引的话,mysql会自动选择唯一索引。-- 创建唯一索引CREATE UNIQUE INDEX uk_users_name ON t_users(name); uk_users_name:自由定义的唯一索引名称t_users:表格名称name:字段名称注意:唯一索引对null不起作用,也就是字段为null的话可以重复;注意:唯一索引对" “不起作...

2020-04-19 12:39:30 112719 5

原创 Linux系统中的常用命令

Linux系统常用命令文件下载功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入文件文件相关的命令下载链接: we...

2020-04-18 22:11:16 152

原创 Dubbo整合Spring Boot(采用注解API方式配置)

该种方式和上一篇:https://blog.csdn.net/u014429653/article/details/99703451创建过程基本一样,不同处是配置文件参考官方文档API配置和注解配置将xml里面的东西编写为API代码再使用注解注册到容器中。API配置: http://dubbo.apache.org/zh-cn/docs/user/configuration/api.html...

2019-08-18 16:17:48 2695

原创 dubbo整合springboot

目前的dubbo已支持和springboot集成,通过springboot容器来实现。借此了解一下基于springboot容器启动的dubbo的配置及使用。1. 准备工作1.1. 首先创建一个maven父项目dubbospringbootdemo创建过程参考:https://blog.csdn.net/u014429653/article/details/97181403创建完成后可删除...

2019-08-18 13:58:03 282

原创 dubbo异常:Failed to check the status of the service . No provider available for the service 解决

服务消费者调用报Failed to check the status of the service . No provider available for the service 这个问题 ,dubboadmin上边看服务正常启动 ,报错信息如下:Exception in thread “main” org.springframework.beans.factory.BeanCreationE...

2019-08-18 12:37:29 7965 1

原创 dubbo配置和使用

一、Dubbo是什么?.Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbo这样的分布式服务框架的需求;这容易和负载均衡弄混,负载均衡是对外提供一个公共地址,请求过来时通过轮询、随机等,路由到不同server。目的分摊压力。dubbo...

2019-08-11 18:29:42 910

原创 如何使用命令行编译以及运行java文件

要想编译和运行java文件,很简单,只需要两个命令:(1) javac:作用:编译java文件;使用方法: javac Hello.java ,如果不出错的话,在与Hello.java 同一目录下会生成一个Hello.class文件,这个class文件是操作系统能够使用和运行的文件。(2) java: 作用:运行.class文件;使用方法:java Hello,如果不出...

2019-08-10 15:49:24 8604

原创 推荐几个在线的Linux系统

1、Unix Terminal Online打开连接:http://www.tutorialspoint.com/unix_terminal_online.php 进入以下页面:2、cb.vu打开网址:http://cb.vu/ 进入以下页面:3、JS/UIX - Terminal打开网址:https://www.masswerk.at/jsuix/index.html显示以下页面...

2019-08-10 13:44:07 7456

原创 Idea建立一个Maven项目,同时解决没有src目录的情况

youIdea创建maven工程没有src目录的情况1、首先打开File目录->Setting->Bulid,Exception,Deployment->Build Tools->Maven->Runner;设置VM Options;-DarchetypeCatalog=internal2、File-new-project3、选择Maven,勾选Creat...

2019-07-24 23:20:14 782

原创 zookeeper安装和部署

Zookeeper 作为一个分布式的服务框架,主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储,但是 Zookeeper 并不是用来专门存储数据的,它的作用主要是用来维护和监控你存储的数据的状态变化。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理。zookeeper的安装分为三种模式:单机模式、集群模式和伪集群模式。可根据自己对可靠性...

2019-07-24 22:41:02 194

原创 Intellig IDEA引入Git并从GitHub下载代码并提交

Intellig IDEA引入GitIntellig IDEA通过Git从GitHub上下载代码并提交然后去GitHub主页找到要下载的项目地址把下载地址粘贴到URL中,点击Test,需要 输入用户名和邮箱切换到dev开发分支提交代码git push提交的时候报错解决方法:使用 AS提交的时候,需要你输入用户名 和 邮箱,下面有个选择框不要勾选 提交。然后可在git...

2019-07-23 17:10:30 170

原创 创建 GitHub 仓库以及创建分支

1、创建自己的 GitHub 仓库进入 GitHub 个人主页,点击Repositories,进入如下界面:点击上图标注所示的绿色New按钮,进入下一步:Repository name,仓库名称;Description,可选描述,也就是写不写都可以;Public,默认的仓库类型;Initialize this repository with a README,初始化仓库的信息文件,...

2019-07-23 16:36:41 2174

原创 Intellig IDEA引入TortoiseSVN以及从SVN上检出工程

Intellig IDEA引入TortoiseSVN

2019-07-23 16:31:45 556

原创 SVN服务器&客户端的搭建和使用

一、首先准备三个软件:1.VisualSVN-Server-4.0.2-x64.msi(svn服务端)2.TortoiseSVN-1.12.0.28568-x64-svn-1.12.0.msi(svn客户端)3.LanguagePack_1.12.0.28568-x64-zh_CN.msi(TortoiseSVN 的汉化包)软件下载地址:http://subversion.apache....

2019-07-22 00:17:50 360

原创 Git安装与详细配置

1、Git安装git需要先安装git工具,这里给出下载地址:https://git-for-windows.github.io/或 https://git-scm.com/download/win双击.exe文件Git Bash Here和Git GUI Here可以方便的在任意目录下打开git,选择默认编辑器配置PATH环境。Use Git from Git Bash o...

2019-07-07 21:59:10 825

原创 GitHub账号的注册及主页介绍

1、GitHub账号的创建使用chrome登录官网:https://github.com/,点击右上角的Sign up然后输入用户名、邮箱账号、密码,然后点击底部的Create an account按钮如果出现response失败的提示,则下载新的chrome浏览器进行注册。如上图所示,我们进入了注册 GitHub 账号流程的第 2 步,在这里有一点需要我们注意,那就是:GitHu...

2019-07-07 20:40:18 2688

精馏塔系统

蒸馏是化工生产过程中将混合流体分离的常用技术。对蒸馏塔的控制通常采用递阶方式,可分为三层。最低层为对液面、输入馈流、焓和压力等参数的控制。第二层为对输出蒸馏产物组分的控制。第三层为优化,例如求出运行的最优稳态。在蒸馏过程中需要补充组分分离减熵所消耗的能量。化工厂耗能较大,其中约40%的能量消耗在蒸馏塔上。

2014-03-29

空空如也

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

TA关注的人

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