自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一步一阶梯

你是火,你是光,你是唯一的神话~

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

原创 支持快速失败的ArrayList:batchRemove

看了ArrayList源码后,发现batchRemove还是较为复杂的,所以在这里写篇文章记录一下,以免以后再看时又头疼,哈哈哈。先以自己的理解,弄一个简单版的,由浅入深,干掉他,如果读者发现有什么不正确的或有什么问题请及时指出哦。先使用两个list模拟数组,从list1中移除list2存在的元素。@Test public void testBatchRemove() { /...

2020-04-18 12:54:06 469 1

转载 kafka 节点未找到错误解决

java.io.IOException: Connection to hadoop.lean.node02:9092 (id: 5 rack: null) failed.该错误刚刚看到的时候也是一脸闷逼,之前配置的都是ip,莫名其妙的就连接到主机名,最后看到一篇博客,受启发,解决了错了,在这里感谢那位老哥啦。以下是链接,希望可以帮助到大家https://blog.csdn.net...

2019-11-27 18:16:35 1603

原创 复杂度分析 效率与空间的消耗

为什么需要大O表示法?在对一个程序的好坏做评估时,改程序的时间和空间消耗是很重要的一个评估标准。当数据量增大时,程序运行的时间也会相应的增加,那么增长的幅度是呈指数还是以线性增长呢?这时就需要使用大O表示法来进行估算。其中,还有一种叫时候统计法的检测方法,即实时监测代码,程序的运行时间和空间,这种方法较大程度受机器的环境和数据量影响,如内存,CPU的好坏,都会直接影响到运行时间的长短,故从便捷...

2019-11-10 10:44:26 236

原创 周三第十题 分行从上往下打印二叉树 Java

AcWing打卡活动《剑指Offer》打卡活动周三第十题 分行从上往下打印二叉树/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x)...

2019-07-19 16:53:55 192

原创 周三第九题 不分行从上往下打印二叉树  Java

AcWing打卡活动《剑指Offer》打卡活动周三第九题 不分行从上往下打印二叉树/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int ...

2019-07-19 16:52:39 138

原创 周三第十一题   之字形打印二叉树  - Java

AcWing打卡活动《剑指Offer》打卡活动周三第十一题 之字形打印二叉树/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int ...

2019-07-19 16:42:11 114

原创 周三第八题  栈的压入、弹出序列 - Java

AcWing打卡活动《剑指Offer》打卡活动周三第八题 栈的压入、弹出序列/** * 思路 * 使用一个栈(stackV)依次压入pushV数组的值 * 使用一个变量j记录弹出顺序 * 在压入的过程中,如果该栈(stackV)的第一个元素等于popV[j],则弹出来(碰到之后必须弹出,不然后面将会没有机会弹出) * 计数器加一 * 如果popV中的元素弹完,则表示...

2019-07-12 15:17:46 121

原创 周三第七题  包含min函数的栈 - Java

AcWing打卡活动《剑指Offer》打卡活动周三第七题 包含min函数的栈/** * 思路 * 需要一个额外的栈,用以记录最小值 * 例子:如压入如下顺序 * 3 -1 2 -2 5 * 则recordStack 的内容为 * 3 -1 -1 -2 -2 * * */ class MinStack { Stack<Int...

2019-07-12 10:03:07 93

原创 周三第五题 二叉树的镜像

AcWing打卡活动《剑指Offer》打卡活动周三第五题 二叉树的镜像/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) {...

2019-07-11 16:31:13 111

原创 周三第四题   二叉树的镜像

AcWing打卡活动《剑指Offer》打卡活动周三第四题 二叉树的镜像/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) {...

2019-07-11 10:58:58 124

原创 周三第三题   树的子结构

AcWing打卡活动《剑指Offer》打卡活动周三第三题树的子结构/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) {...

2019-07-11 10:57:25 157

原创 合并两个排序的链表

AcWing打卡活动《剑指Offer》打卡活动周三第二题合并两个排序的链表/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } * 思...

2019-07-10 20:13:11 120

原创 反转链表

AcWing打卡活动《剑指Offer》打卡活动周三第一题反转链表/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } * * ...

2019-07-10 19:57:35 80

原创 链表中环的入口结点

AcWing打卡活动《剑指Offer》打卡活动周二第十一题链表中环的入口结点/** * Definition for singly-linked list. * class ListNode { * int val; * ListNode next; * ListNode(int x) { * val = x; * ...

2019-07-10 15:33:56 113

原创 链表中倒数第k个节点

AcWing打卡活动《剑指Offer》打卡活动周二第十题链表中倒数第k个节点/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } *...

2019-07-10 10:41:14 96

原创 调整数组顺序使奇数位于偶数前面

AcWing打卡活动《剑指Offer》打卡活动周二第九题调整数组顺序使奇数位于偶数前面/** * 思路 * a.使用两个索引分别指向数组的第一个和最后一个元素 * b.当第一个索引指向的元素为偶数和第二个索引指向的元素为奇数时, * 交换两个索引指向的值 * c.循环b操作,停止条件为 begin > end * 1 & 1 = 1; 0 &amp...

2019-07-10 10:18:20 100

原创 表示数值的字符串

AcWing打卡活动《剑指Offer》打卡活动周二第八题表示数值的字符串/** * 字符串有两种开头方式 * 其中A为数值的整数部分,B紧跟着小数点为数值的小数部分,C紧跟'e'或者'E'为数值的指数部分 * a. 以A为整数部分的开头 A[.[B]][e|EC] * * b. 以.B为小数部分的开头 .B[e|EC] * 其中,整数部分开头是可以有±号的,而...

2019-07-08 12:29:52 124

原创 删除链表中重复的节点

AcWing打卡活动《剑指Offer》打卡活动周二第六题删除链表中重复的节点/** * 定义一个虚拟头结点,值为-1,这样就可以保证头结点不会被删除 * 使用两个引用,分别用来校验是否值一样 * 该题会完全删除掉重复的节点 * 由样例可知,不会出现负数值 * Definition for singly-linked list. * public class...

2019-07-03 15:59:25 127

原创 在O(1)时间删除链表结点

AcWing打卡活动《剑指Offer》打卡活动周二第五题在O(1)时间删除链表结点/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } *...

2019-07-01 14:15:32 104

原创 数值的整数次方

AcWing打卡活动《剑指Offer》打卡活动周二第四题数值的整数次方class Solution { public double Power(double base, int exponent) { double res = 1; for(int i = 0; i < Math.abs(exponent)...

2019-07-01 13:47:40 86

原创 二进制中1的个数

AcWing打卡活动《剑指Offer》打卡活动周二第三题二进制中1的个数/** * 思路 * 10010 - 1 = 10001 * 10010 & 10001 = 10000 -> 少了一个1 * 11100 - 1 = 11011 * 11100 & 11011 = 11000 -> 同样少了一个1 * 按照这个思路不停的&am...

2019-07-01 13:28:36 136

原创 剪绳子

AcWing打卡活动《剑指Offer》打卡活动周二第二题 剪绳子/** * 1、设 ni >= 5, 3 * (ni - 3) >= ni? 2 * ni >= 9? 衡大于 * 2、ni = 4 时, 拆分为2 * 2 才为最大 * 3、2 * 2 * 2 < 3 * 3 故能拆分成3时,尽量拆分为三 * 4、除了边界情况不得已才会拆分出1...

2019-07-01 13:06:59 81

原创 机器人的运动范围

AcWing打卡活动《剑指Offer》打卡活动周二第一题机器人的运动范围class Solution { public int movingCount(int threshold, int rows, int cols) { // 给了m,n,k的范围,所以不需要进行校验 // 需要一个数组维护机...

2019-06-30 19:42:33 137

原创 矩阵中的路径

AcWing打卡活动《剑指Offer》打卡活动周一第十一题 矩阵中的路径class Solution { public boolean hasPath(char[][] matrix, String str) { if(matrix == null || str == null || matrix.length <= 0) { ...

2019-06-30 16:37:55 139

原创 斐波那契数列

AcWing打卡活动《剑指Offer》打卡活动周一第九题斐波那契数列/** * 1 1 2 3 5 * 如果使用递归,则会多出很多多余的计算 */class Solution { public int Fibonacci(int n) { // 使用从下至上的方式 if(n == 0) { re...

2019-06-30 14:47:21 289

原创 旋转数组的最小数字

AcWing打卡活动《剑指Offer》打卡活动周一第十题旋转数组的最小数字/** * 利用旋转数组的特点,左边数组要比右边数组打,结合二分法即可即可解出 **/class Solution { public int findMin(int[] nums) { if(nums.length <= 0) { // 参数校验 ...

2019-06-30 14:34:05 69

原创 用两个栈实现队列

AcWing打卡活动《剑指Offer》打卡活动周一第八题用两个栈实现队列/** * 用两个栈实现队列 * 该题无需考虑时间复杂度,只需要实现操作即可 * create by yifeng */public class Question09 { public static void main(String[] args) { } cl...

2019-06-29 16:32:44 134

原创 二叉树的下一个节点

AcWing打卡活动《剑指Offer》打卡活动周一第七题二叉树的下一个节点public TreeNode inorderSuccessor(TreeNode p) { // 中序遍历, 左根右 // 若该节点有右子节点,则遍历该节点的右子节点的子节点 if(p.right != null) { ...

2019-06-29 16:12:10 95

原创 替换空格

AcWing打卡活动《剑指Offer》打卡活动周一第四题替换空格/** * 如若从前向后遍历,时间复杂度将会是O(n^2), * 如若从后至前遍历,提前拿到数组扩容的空间,则时间复杂度 * 将会优化到O(n) * create by yifeng */public class Solution { public String replaceSpaces(S...

2019-06-29 07:18:29 198

原创 二维数组中的查找

AcWing打卡活动《剑指Offer》打卡活动第一周第三题二维数组中的查找/*由题目中二维数组的特性可得,每行的最右边最大,每列的从上之下依次递增,故如若从右至左(若行最大值大于小于目标值,则可直接跳过该行),从上至下遍历(若最小值大于目标值,则可直接跳过该列),则可大大提高效率。*/class Solution { public boolean searchA...

2019-06-29 03:48:54 84

原创 找出数组中重复的数字

AcWing打卡活动《剑指Offer》打卡活动第一周第一题不修改数组找出重复的数字/** * 前提条件是 数组中的元素必须小于数组的长度且大于-1 * @param numbers * @return -1 未找到或者参数校验失败 */ static int duplicate(int numbers[]) { ...

2019-06-28 19:49:25 335

原创 不修改数组找出重复的数字

AcWing打卡活动《剑指Offer》打卡活动第一周第二题不修改数组找出重复的数字/** * AcWing * 由题目的特性,可根据数组的长度,逐个检查范围,如数组的长度为8 * 则会使用二分法,检查左半边索引值(即1~4)在整个数组中的数量, * 逐渐缩小范围 * @param nums * @return 重复数字...

2019-06-28 19:38:50 138

原创 nginx的简单实用

Nginx是什么    nginx是一款轻量级的web服务器,也是一款反向代理服务器。 Nginx能干什么    分离前端    可作为HTTP反向代理服务器    作为邮件代理服务器    作为负载均衡    等等... Nginx特点    高稳定、高性能,资源占用少、功能丰富、模块化结构等。 Nginx的安装    安装gcc,键入以下...

2018-07-28 15:02:45 203

原创 vsftpd的使用

简介vsftpd是 “very secure FTP deamon”的缩写,是一个完全免费,开源的ftp服务器软件。特点小巧轻快,安全易用,支持虚拟用户、支持带宽限制等功能。安装执行 yum -y install vsftpd注:在安装前需提前确认是否已经安装了vsftpd 命令如下:rpm -qa|grep vsftpd另外,默认的配置文件路径为: /etc/vsftpd/vsftpd.conf...

2018-06-08 15:47:46 30457 3

原创 idea快捷键 记我所用的

在这里记录下我个人经常用的idea快捷键,由于是才开始使用,所以就先记一下我已经记下的快捷键,后期再加内容。操作文件crtl+E 查看最近编辑的文件crtl+shift+N 查找文件操作代码ctrl+Q 显示注释文档,包括显示包结构和父类crtl+[或者crtl+] 跳转到上面/下面的大括号 crtl+w 选中代码,多次按下可以升级哦  如果光标附件是单词,则会先选择单词,然后在慢慢的选中越来越多...

2018-06-05 17:26:25 225

原创 Elasticsearch插件/分布式安装

记录一下Elasticsearch插件和分布式的部署方法一、Elasticsearch插件安装    环境: openjdk 1.8.0_161               node 8.9.3 (要求大于等于6.0)               elasticsearch-head 插件安装包~               以上均为博主的使用环境,可供大家参考           在linux ...

2018-04-12 16:43:28 299

原创 Elasticsearch安装

一、Elasticsearch的安装(linux)    Elasticsearch作为开箱即用的搜索服务器,非常方便。  Elasticsearch的官网下载    如果遇到了错误,可以参考博主的另外一篇文章  - &gt; es排错指南    下载之后,直接解压,如下图 (博主下载为现在的最新版本 6.2.3)二、各个主要目录的作用    使用ls命令,即可查看elasticsearch 下的...

2018-04-10 14:44:38 160

原创 elasticsearch排错指南(各种错误~)

博主在学习es的时候,遇到了很多错误,这里列举安装时的错误。一、can not run elasticsearch as root如上图,代表不能使用root用户运行es,这是es的开发团队考虑到了安全性所做的设置解决方案:    新建用户,使用新建的用户安装即可,敲击如下命令(其中yf为用户名,各位可以自己设定,su即切换用户)    adduser yf    su yf二、unable to...

2018-04-10 14:37:40 1449

转载 redis学习之入门(入坑)

由于最近需要用到redis,所以在学习之余写写博客,养成一个好的习惯,希望对大家有所帮助。期间如果遇到坑,我会在本栏目中写出来,便于大家参考。一、安装    安装的第一步肯定是下载redis,这里介绍windows版本。    https://github.com/MSOpenTech/redis/releases              然后解压 ——&gt; 打开cmd窗口 ——&gt; 在...

2018-04-09 16:06:05 1466

原创 SpringBoot简单入门

一、springBoot简介    Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。    Spring B...

2018-03-21 11:12:55 218

空空如也

空空如也

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

TA关注的人

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