自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

BluthLeee的博客

满船清梦压星河

  • 博客(120)
  • 收藏
  • 关注

原创 网站报错:HTTP ERROR 502

问题描述crowdos网站突然就访问不了了,输入域名www.crowdos.cn,就弹出类似个界面,主要报错“HTTP ERROR 502”问题跟踪根据基本web知识,502报错是一种HTTP协议的服务器端错误状态代码,它表示作为网关或代理角色的服务器,从上游服务器(如tomcat、php-fpm)中接收到的响应是无效的。因地制宜,可以定位到我们网站所使用的nginx代理服务器,它可能出现问题了。问题解决现在情况是:远程连接服务器是ok的,ping了一下也是通的。第一次尝试:重启了一下服务

2022-01-22 19:51:22 15982 1

原创 进程PID kill不掉?如何解决端口占用

问题描述我需要9094端口,出于某些原因,我的程序只能运行在该端口。但是该端口被其他的进程所占用,如图:一般来说,遇到这种情况,直接kill -9 PID就可以结束该进程,进而释放端口号了。但是问题来了,kill进程并不能成功,alertmanager进程换了个PID,继续牢牢地占用着9094端口。问题解决首先在这我们需要明确,并不是kill进程不成功,事实上,kill进程成功了,所以alertmanager结束,PID3087释放;但是,它又被其他服务唤醒,所以alertmanager换了一个新

2021-04-15 14:33:24 5015 1

原创 docker引起的服务器磁盘占满 No space left!

问题描述我在用docker-compos up -d拉去docker镜像时,终于快要拉完时,报错,磁盘空间不足。。。docker默认目录可以通过docker info命令查出来,是 /var/ldocker/lib,也就是 /根目录下。通过df -h可以看出来,根目录已占满,这导致的一个很严重的问题是,在终端下敲入命令按Tab键竟然都无法弹出联想词汇(woc,我都傻了,这是实验室的服务器,我刚用,其他兄弟姐妹是怎么忍受的。。。)如下图:解决办法本来,我是按照记一次 docker 引起的服务器磁盘

2021-04-14 11:10:11 443

原创 【动态规划】刷题总结

参考文献动态规划之背包问题系列这篇文章写的真滴牛逼,感谢~

2021-03-11 21:36:19 181

原创 【前缀和、差分数组】刷题总结

介绍前缀和主要适用的场景是原始数组不会被修改的情况下,频繁查询某个区间的累加和。前缀和,核心代码就是下面这段:class PrefixSum { // 前缀和数组 private int[] prefix; /* 输入一个数组,构造前缀和 */ public PrefixSum(int[] nums) { prefix = new int[nums.length + 1]; // 计算 nums 的累加和 for (in

2021-03-09 12:26:16 252

原创 【双指针】刷题总结

介绍双指针技巧再分为两类,一类是「快慢指针」,一类是「左右指针」。前者解决主要解决链表中的问题,比如典型的判定链表中是否包含环;后者主要解决数组(或者字符串)中的问题,比如二分查找。题型快慢指针判定链表中是否含有环已知链表中含有环,返回这个环的起始位置寻找链表的中点寻找链表的倒数第 n 个元素如何去除有序数组的重复元素第五点是单独的一类题型,参看如何去除有序数组的重复元素左右指针二分查找两数之和反转数组滑动窗口算法参考文章双指针技巧...

2021-03-08 11:45:46 145

原创 位运算 刷题总结

位运算介绍位运算(&、|、^、~、>>、<<):从现代计算机中所有的数据二进制的形式存储在设备中。即 0、1 两种状态,计算机对二进制数据进行的运算(+、-、*、/)都是叫位运算。用法判断两个数是否异号int x = -1, y = 2;bool f = ((x ^ y) < 0); // trueint x = 3, y = 2;bool f = ((x ^ y) < 0); // false这个技巧还是很实用的,利用的是补码编码的符号位

2021-03-07 20:03:38 183

原创 设计数据结构刷题总结

介绍有这么一类题,会考察利用已有的数据结构(包含某些算法)来设计一种新的数据结构。经典例题【力扣-232. 用栈实现队列】/** * 主要难点在于pop时要记得检查s2栈是否为空 */import java.util.Stack;//leetcode submit region begin(Prohibit modification and deletion)class MyQueue { private Stack<Integer> s1; priv

2021-03-03 16:20:54 237 1

原创 单调栈、单调队列刷题总结

单调栈介绍单调栈实际上就是栈,只是利用了一些巧妙的逻辑,使得每次新元素入栈后,栈内的元素都保持有序(单调递增或单调递减)。听起来有点像堆(heap)?不是的,单调栈用途不太广泛,只处理一种典型的问题,叫做 Next Greater Element。代码模板: public int[] nextGreaterElement(int[] nums) { int len = nums.length; int[] res = new int[len]; Sta

2021-03-03 12:47:33 255

原创 递归思想刷题总结

核心思想我们在调用递归函数的时候,把递归函数当做普通函数(黑箱)来调用,即明白该函数的输入输出是什么,而不用管此函数内部在做什么。(千万不要跳进去了,你脑袋能压几个栈呀?)例题【力扣-395. 至少有K个重复字符的最长子串】解题思路本题要求的一个最长的子字符串的长度,该子字符串中每个字符出现的次数都最少为 kk。求最长子字符串/区间的这类题一般可以用滑动窗口来做,但是本题滑动窗口的代码不好写,我改用递归。也借本题来帮助大家理解递归。重点:我们在调用递归函数的时候,把递归函数当做普通函数(黑

2021-02-27 13:55:39 219

原创 [算法] 九、动态规划

说明总结:动态规划,一般来说,首先弄明白暴力递归怎么做(尝试),然后再优化(避免重复计算),把暴力递归的过程抽象成状态表达。经典例题汉诺塔/** * * 汉诺塔问题 * 打印n层汉诺塔从最左边移动到最右边的全部过程 * */public class Code_02_Hanoi { public static void hanoi(int n) { if (n > 0) { func(n, n, "left", "mid", "right"); } }

2021-02-21 17:07:22 85

原创 [算法] 八、贪心算法

经典例题金条切割/** * 金条切割 * 一块金条切成两半,是需要花费和长度数值一样的铜板的。比如 * 长度为20的 金条,不管切成长度多大的两半,都要花费20个铜 * 板。一群人想整分整块金 条,怎么分最省铜板? * 例如,给定数组{10,20,30},代表一共三个人,整块金条长度为 * 10+20+30=60. 金条要分成10,20,30三个部分。 如果, 先把长 * 度60的金条分成10和50,花费60 再把长度50的金条分成20和30, * 花费50 一共花费110铜板。

2021-02-21 13:53:00 115

原创 滑动窗口刷题总结

代码模板《挑战程序设计竞赛》这本书中把滑动窗口叫做「虫取法」,我觉得非常生动形象。因为滑动窗口的两个指针移动的过程和虫子爬动的过程非常像:前脚不动,把后脚移动过来;后脚不动,把前脚向前移动。我分享一个滑动窗口的模板,能解决大多数的滑动窗口问题def findSubArray(nums): N = len(nums) # 数组/字符串长度 left, right = 0, 0 # 双指针,表示当前遍历的区间[left, right],闭区间 sums = 0 # 用于统计 子数组

2021-02-21 11:06:16 164

原创 [算法] 七、并查集

例题岛问题package class_05;/** * * 岛问题 * * 一个矩阵中只有0和1两种值,每个位置都可以和自己的上、下、左、右 * 四个位置相连,如果有一片1连在一起,这个部分叫做一个岛,求一个 * 矩阵中有多少个岛? * 举例: 0 0 1 0 1 0 1 1 1 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 这个矩阵中有三个岛。 * */public class Code_03_Islands { public static i

2021-02-20 15:10:30 111

原创 哈希表刷题总结

典型例题力扣–697参考题解: class Solution { public int findShortestSubArray(int[] nums) { //定义一个Map,Key为数组中的值,Value为一个数组,数组的第一个元素为Key出现的次数,第二个元素为Key第一次出现的位置,第三个元素为Key最后一次出现的位置。 Map<Integer,int[]> map = new HashMap<Integer,int[]>()

2021-02-20 11:57:27 233 2

原创 [算法] 六、 二叉树

二叉树二叉树的先序、中序、后续遍历,包括递归和非递归方式import java.util.Stack;/** * * 实现二叉树的先序、中序、后序遍历,包括递归方式和非递归方式 * */public class Code_01_PreInPosTraversal { public static class Node { public int value; public Node left; public Node right; public Node(int da

2021-02-18 15:57:01 204 2

原创 [算法] 五、链表

例题【题目】 一种特殊的链表节点类描述如下:public class Node { public int value; public Node next; public Node rand; public Node(int data) { this.value = data; }}Node类中的value是节点值,next指针和正常单链表中next指针的意义一 样,都指向下一个节点,rand指针是Node类中新增的指针,这个指针可 能指向链表中的任意一个节点,也可能指向n

2021-02-17 16:51:39 100

原创 [算法] 四、桶排序、计数排序、基数排序以及部分例题

左神算法基础班第三讲桶排序、计数排序、基数排序非基于比较的排序,与被排序的样本的实际数据状况很有关系,所以实际中并不经常使用时间复杂度O(N)O(N)O(N),额外空间O(N)O(N)O(N)稳定的排序桶排序是一个大的概念,针对具体的实现可分为计数排序、基数排序例题给定一个数组,求如果排序之后,相邻两数的最大差值,要求时间复杂度O(N),且要求不能用非基于比较的排序。 public static int maxGap(int[] nums) { if (nums == n.

2021-02-05 23:08:09 243 2

原创 [算法] 三、排序--排序算法的补充

工程中的综合排序算法对于基本数据类型(int,float等),用快排。因为快排的速度最快对于自己定义的类型(class类),用归并排序。因为归并排序是稳定的。当样本量小于60时,用插入排序。尽管插入排序的复杂度是O(N2)O(N^{2})O(N2),但是当样本量很小的时候,由于插入排序的常数项很小,所以很快注:对于大规模的样本量排序,根据数据类型选择快排还是归并排序,然后对分割后的小样本量插入排序有关排序问题的补充归并排序的额外空间复杂度可以变成O(1)O(1

2021-02-05 21:33:48 119

原创 [算法] 二、排序--归并、快速、堆

代码实现MergeSortpackage Train_01;public class MergeSort { public static void main(String[] args) { int[] arr = new int[]{3, 2, 14, 4, 5, 1, 8, -4, 0, 4, -2, -9}; mergeSort(arr); printArray(arr); } pub

2021-02-05 17:54:41 123 5

原创 [算法] 一、排序--冒泡、选择、插入

代码实现BubbleSortpackage Train_01;/** * @author Bluth */public class BubbleSort { public static void main(String[] args) { int[] arr = new int[]{3, 2, 14, 4, 5, 1, 8, -4, 0, 4, -2, -9}; bubblesort(arr); pr

2021-02-05 17:32:17 66

原创 并查集 刷题总结

并查集模板class UF { // 连通分量个数 private int count; // 存储一棵树 private int[] parent; // 记录树的“重量” private int[] size; public UF(int n) { this.count = n; parent = new int[n]; size = new int[n]; for (int i

2021-02-03 09:40:16 122

原创 Win10 MySQL安装 注意事项

缘由以前安装MySQL有阴影了,第一是因为Linux上装过一回,费了半天功夫,麻烦;第二是因为windows上安装有事会出错,更让人抓狂的是根据MySQL 安装向导安装了MySQL,结果直接给装C盘,没有选择的余地,此外,还在“开始”页面产生了一大堆已安装程序,看得头皮发麻。还好现在的方式是:在linux中主要用docker中的mysql镜像win10安装注意点安装包存在百度网盘里,是下面这个。按照这个链接中的第一个方法来做就行MySQL安装----百度经验注意选择“server only

2021-01-28 22:51:42 113 1

原创 GNS3 Network Emulator 使用(一)

介绍官方说明Setup wizard for GNS3 VM官方也提供了Setup wizard for local server,但是功能受限,最重要的是无法安装appliance,比如说路由器没法用,这就很难受了问题“GNS3 - (RESUELTO) - eth0 is not configured. Please manually configure it via the Networking menu”解决办法: 首先配置network,需要将注释掉的取消注释;接着参考Yout

2021-01-20 19:40:53 2532 3

原创 leetcode习题整理

从2021/1/15起并查集T947

2021-01-16 10:24:01 65

转载 Leetcode 删除或保留若干字符字典序问题

我花了几天时间,从力扣中精选了四道相同思想的题目,来帮助大家解套,如果觉得文章对你有用,记得点赞分享,让我看到你的认可,有动力继续做下去。这就是接下来要给大家讲的四个题,其中 1081 和 316 题只是换了说法而已。316. 去除重复字母(困难)321. 拼接最大数(困难)402. 移掉 K 位数字(中等)1081. 不同字符的最小子序列(中等)402. 移掉 K 位数字(中等)我们从一个简单的问题入手,识别一下这种题的基本形式和套路,为之后的三道题打基础。题目描述给定一个以字符串表

2020-12-20 21:45:58 759

原创 Flink Standalone 集群搭建准备: 主机改名 修改hosts文件 master免密登录work节点

背景Apache Flink 零基础入门(三):开发环境搭建和应用的配置、部署及运行为了实现多机部署Flink Standalone集群,需要配置conf/masters,conf/works,conf/flink-conf.yaml文件,如图。以masters文件为例,vim conf/works,希望得到下图这种:用主机名代表各个虚拟机镜像而不是用ip地址表示,用IP地址的话,不但麻烦,可读性还差。./bin/start-cluster.sh启动flink集群时,由于jobmanager部

2020-11-26 22:24:52 737

原创 centos安装zsh,以及oh my zsh

参考链接Mac、Linux安装zsh & ohmyzshohmyzsh github官网DevOps的利器-zsh,了解一下优点第三个参考文献列出了十个优点,这里说一下我的感受:美观,易用,插件安装一般centos没有默认安装zsh,所以第一步是安装zshcat /etc/shellssudo yum install zshcat /etc/shells | grep zshchsh -s /bin/zshecho $SHELL安装ohmyzshwget h

2020-11-20 10:12:41 445

原创 Nginx报错 nginx: [error] open() “/run/nginx.pid“ failed (2: No such file or directory)

问题修改nginx.conf配置后,输入sbin/nginx -s reload,结果报错nginx: [error] open() "/run/nginx.pid" failed (2: No such file or directory)解决办法网上的办法,大多针对“nginx: [error] open() "/run/nginx.pid" failed (2: No such file or directory)”说实话,可能有用,但是我这改了好久都不行。。。我的问题是nginx.conf

2020-11-01 18:37:01 4813 6

原创 Git 学习之团队协作(Gitee实操)

前言原先都是自己独立开发,所以在协作开发这块的技能有所欠缺,对Git命令的使用还停留在独立开发上,平常用的最多的命令就是:git statusgit add --allgit commit -m "描述"git push origin master现在有的东西确实一个人搞不定了,需要团队协作,才能事半功倍。步骤管理员创建远程仓库首先在Gitee码云上创建一个远程仓库,根据需要选择是私有仓库还是公有仓库在本地项目中用git init来初始化本地仓库,然后经过git add .,git

2020-10-30 11:18:25 4620

原创 docker笔记 安装、dockerfile、docker-compose

安装docker下载Docker依赖环境想安装Docker,需要先将依赖的环境全部下载下来,就像Maven依赖JDK一样yum -y install yum-utils device-mapper-persistent-data lvm2指定Docker镜像源默认下载Docker会去国外服务器下载,速度较慢,可以设置为阿里云镜像源,速度更快yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/ce

2020-10-05 11:13:36 116

原创 (8) 基于Flink的互联网直播平台日志分析项目实战

基于Flink的互联网直播平台日志分析项目功能需求接入的数据类型就是日志离线:Flume ==> HDFS实时:Kafka ==> 流处理引擎 ==> ES ==> Kibana项目功能统计一分钟内每个域名访问产生的流量Flink接收Kafka的进行处理统计一分钟内每个用户产生的流量域名和用户是有对应关系的Flink接收Kafka的进行 + Flink读取域名和用户的配置数据进行处理数据源Mock 产生: 务必要掌握的数据敏感

2020-10-05 10:56:17 390 1

原创 (7) Flink connector( zookeeper, kafka)

kafka connector部署zookeeper部署下载链接https://mirrors.bfsu.edu.cn/apache/zookeeper/zookeeper-3.6.2/apache-zookeeper-3.6.2-bin.tar.gz安装包的目录和解压的目录是 /usr/local配置系统环境变量 vim ~/.bash_profile关于系统环境变量的文件在哪改,可以参考 /etc/profile和~/.bash_profile的区别与联系配置zoo

2020-10-05 10:41:47 484

原创 (6) Flink Table API&SQL

IntroductionDataSet&DataStream API需要熟悉两套API:DataSet/DataStreamMapReduce ==> Hive SQLSpark ==> Spark SQLFlink ==> SQLFlink是支持流处理/批处理,如何做到API层面的统一==> Table & SQL API 关系型APIEverybody knows SQL.实践引入相关依赖https://ci.apach

2020-10-05 10:33:47 87

原创 (5) DataStream API编程

Source从官网的表述中,可以明白:Flink处理可以从预定义的一些source function中读取,也可以定制自己的source通过StreamExecutionEnvironment.addSource(sourceFunction) 可以将source添加到程序中,addSource(sourceFunction) 的源代码如下:/** * Adds a Data Source to the streaming topology. * * <p>By defau

2020-10-05 10:31:56 191

原创 (4) DataSet API编程

Data Sources参考链接:Data sources从集合创建dataset从文件或文件夹创建文件从csv文件创建dataset从递归文件夹创建dataset创建dataset从压缩文件创建dataset

2020-10-05 10:27:56 298

原创 (3) Flink核心概念和编程模型

大数据处理的流程MapReduce: input -> map(reduce) -> outputStorm: input -> Spout/Bolt -> outputSpark: input -> transformation/action -> outputFlink: input -> transformation/sink -> outputDataSet and DataStreamimmutable批处理:DataSet流处理:D

2020-10-05 10:24:52 94

原创 (2) 快速上手第一个Flink应用程序--Java

环境配置JavaMaven更改conf目录下的setting.xml文件中的依赖存储位置IDEA前置条件: Maven 3.0.4(or higher) and Java 8.xFlink开发批处理应用程序需求词频统计(word count)一个文件,统计文件中每个单词出现的次数分隔符是\t统计结果我们直接打印在控制台(生产上肯定是Sink到目的地)用Java实现最新的文档是v.11版本,页面布局已经发生很大变化了。视频中是v1.7,链接为http

2020-10-05 10:21:55 166 1

原创 (1) 初识Flink

Flink是什么Apache Flink is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. Flink has been designed to run in all common cluster environments, perform computations at in-memory speed and at any

2020-10-05 10:16:56 122

原创 Log4j报错 ERROR StatusLogger No Log4j 2 configuration file found.

报错java项目使用log4j2日志,配置好依赖的包之后,编译报错,报错信息如下:ERROR StatusLogger No Log4j 2 configuration file found. Using default configuration (logging only errors to the console), or user programmatically provided configurations. Set system property ‘log4j2.debug’ to sho

2020-09-26 20:14:31 1941

空空如也

空空如也

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

TA关注的人

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