自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux系统增加硬盘

  在实际情况中我们可能会遇到系统存储空间不足,需要追加硬盘的情况。那么增加硬盘的步骤是什么呢?以下是个人根据实际情况做的一些记录(自己笔记本虚拟出机器,实际环境不能随意改动),不对的地方多多指点(1)首先需要将硬盘追加到系统上   VM点击目标机器的设置,然后点击添加    然后选择硬盘,点击下一步    依次按照标注操作  点击完成后就算添加上硬盘了。  接下来就是将追加的磁盘挂载到系统上  (1)首先我们可以利用lsblk查看一下磁盘情况,sdb就是新增加的部分  使用f

2020-08-18 17:06:13 352

原创 java中的位运算

Java提供的位运算符有:左移( << )、右移( >> ) 、无符号右移( >>> ) 、位与( & ) 、位或( | )、位非( ~ )、位异或( ^ ),除了位非( ~ )是一元操作符外,其它的都是二元操作符。1、左移( << )例:5 << 2 = 20运算过程:首先java得整数类型int 32位,将5转化为32位的二进制形式0000 0000 0000 0000 0000 0000 0000 0101 左移两位

2020-07-13 16:55:53 368

原创 五大常用算法——动态规划

基本概念:  动态规划过程:每次决策依赖于当前状态,又随即引起状态的转移。一个决策序列就是在变化的状态中产生出来的,所以,这种多阶段最优化决策解决问题的过程就称为动态规划。基本思想:  类似于分治算法(后续博客介绍),将一个待求解的问题分解成若干个子问题,顺序求解每个子问题,前一个子问题的解包含后一个子问题有用的信息。求解每一个子问题的最优解,则最后一个子问题的解就是初始问题的解。  动态规划问题求解过程中会出现子问题重叠的问题(就是重复计算子问题),我们可以利用一个二维数组将每一个子问题的解记录下

2020-05-24 12:30:57 502

原创 xftp的使用和介绍

xftp简介: Xftp是一个功能强大的SFTP、FTP 文件传输软件。使用了 Xftp 以后,MS Windows 用户能安全地在 UNIX/Linux 和 Windows PC 之间传输文件。优点安全性是一个软件应用程序,可以帮助您通过网络传输文件。 尽管它是为工作在Windows系统上而设计的,用户还可以安全地传输文件到使用Unix /Linux系统的主机。 它还支持SFTP协...

2019-09-23 16:31:19 8119

原创 关于操作系统常见问题总结

1、进程和线程以及它们的区别进程是具有一定功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源调度和分配的一个独立单位。线程是进程的实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。一个进程可以有多个线程,多个线程也可以并发执行2、线程同步的方式有哪些?互斥量:采用互斥对象机制,只有拥有互斥对象的线程才有访问公共资源的权限。因为互斥对象只有一个,所...

2018-10-04 11:08:07 2714

翻译 数据库相关知识总结

数据库的四大特性(ACID):原子性(Atomicity)原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。一致性(Consistency)一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于...

2018-10-03 15:29:15 221

原创 java并发包提供的并发工具类

java并发包提供哪些并发工具类?我们通常所说的并发包就是java.util.concurrent及其子包,集中了java并发的各种工具类,主要包括以下几个方面:提供了比synchronized更加高级的同步结构,包括CountDownLatch、CyclicBarrier、Semaphore等,可以实现更加丰富的多线程操作,比如利用Semaphore作为资源控制器,可以控制同时工作的线程数...

2018-09-24 16:54:17 508

原创 TCP 和 UDP

UDP协议TCP和UDP有哪些区别?TCP是面向连接的,UDP是面向无连接的。面向连接的协议会先建立连接。例如TCP的三次握手。所谓的建立连接是为了在客户端和服务端维护连接,而建立一定的数据结构来维护双方交互的状态,用这样的数据结构来保证所谓的面向连接的特性。TCP提供可靠支付,保证数据无差错、不丢失、不重复、按序到达,UDP反之。TCP是面向字节流的,UDP是基于数据报的。TCP可以...

2018-09-22 19:34:36 192

原创 java什么情况下产生死锁?如何定位修复?

java什么情况下产生死锁?如何定位修复?死锁:死锁是一种特定的程序状态,在实体之间,由于循环依赖导致彼此一直处于等待之中,没有任何个体可以继续前进。死锁产生条件:互斥条件请求与保持条件不可剥夺条件环路等待条件定位死锁最常见的方式就是利用jstack工具获取线程栈,然后定位相互之间的依赖关系,进而找到死锁。死锁实例:public class DeadLockSample ex...

2018-09-22 15:11:02 2096

原创 MySQL支持的事务隔离级别,以及悲观锁和乐观锁的原理

MySQL支持的事务隔离级别,以及悲观锁和乐观锁的原理所谓隔离级别,就是在数据库事务中,为保证数据读写的正确性而提出的定义,它并不是MySQL专有的概念,而是源于ANSI/ISO制定的SQL-92标准。MySQL InnoDB引擎,是基于MVCC(Multi-Versioning Concurrency Control)和锁的复合实现,按照隔离程度从低到高,MySQL失误隔离级别分为四个不...

2018-08-30 21:38:41 810

原创 java常见面试题(4)

接口和抽象类的区别?接口和抽象类是java面向对象的两个基础机制。接口是对行为的抽象,它是抽象方法的集合,利用接口可以达到API定义和实现分离的目的。接口,不能实例化;不能包含任何非常量成员,任何field都是隐含着public static final的意义;没有非静态方法实现,也就是要么是抽象方法,要么是静态方法。抽象类是不能实例化的类,用关键字abstract修饰,其目的是代码重...

2018-08-30 12:04:29 279

原创 java常见面试题(3)

synchronized和ReentrantLock有什么区别?synchronized是java内建的同步机制,所以也称其为Intrinsic Locking,它提供了互斥的语义和可见性,当一个线程已获取当前锁时,其它试图获取的线程只能等待或者阻塞在那里。在java 1.5以前,synchronized是仅有的同步手段,可以用来修饰方法,也可以指定在特定的代码块上,本质上synchroniz...

2018-08-29 17:10:57 188

原创 java常见面试题(2)

java反射机制,动态代理是基于什么原理?JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。反射机制是java提供的一种基础功能,赋予程序在运行时自省的能力。通过反射我们可以直接操作类或者对象,比如获取某个对象的类定义,获取声明的属性和方法,调用...

2018-08-28 18:08:17 304

原创 Java常见面试题(1)

对java平台的理解,java是否是解释执行?java是面向对象的语言,最显著的两个特点是“一次书写,到处运行(Write once,run anywhere)”和垃圾收集(GC)。第一个特点使java非常容易的或跨平台能力,第二个特点java通过垃圾收集器回收分配内存,大部分情况下,程序员不需要操心内存的分配与回收。JRE:java运行环境,包含了JVM和java类库。 JDK:JDK...

2018-08-28 15:02:34 205

原创 Leetcode——532. 数组中的K-diff数对

532. 数组中的K-diff数对给定一个整数数组和一个整数 k, 你需要在数组里找到不同的 k-diff 数对。这里将 k-diff 数对定义为一个整数对 (i, j), 其中 i 和 j 都是数组中的数字,且两数之差的绝对值是 k.示例 1:输入: [3, 1, 4, 1, 5], k = 2输出: 2解释: 数组中有两个 2-diff 数对, (1, 3) 和 (3, 5)。...

2018-08-24 22:08:20 201

翻译 spring中的设计模式

spring中的设计模式第一种:简单工厂又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一。 简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类。 spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获得bean对象,但是否是在传入参数后创建还是传入参数前创建这个要根据具体...

2018-08-24 10:50:26 139

原创 Leetcode——515. 在每个树行中找最大值

515. 在每个树行中找最大值您需要在二叉树的每一行中找到最大的值。示例:输入: 1 / \ 3 2 / \ \ 5 3 9 输出: [1, 3, 9] 代码: /** * Definition for a binary tree node. * public class TreeNode { * ...

2018-08-23 21:23:41 464

原创 Leeycode——404. 左叶子之和

404. 左叶子之和计算给定二叉树的所有左叶子之和。示例: 3 / \9 20 / \ 15 7在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24 代码:/** * Definition for a binary tree node. * public class TreeNode { * int val; * ...

2018-08-23 21:01:26 406

原创 Spring练习(2)

导包: 实体类(javaBean):package until;public class Car { private String name; private String color; public String getName() { return name; } public void setName(String na...

2018-08-16 22:07:51 318

原创 Spring练习(1)

导包: 实体类(javaBean):package until;public class User { private String name; private Integer age; private Car car; public Car getCar() { return car; } public void...

2018-08-16 22:00:58 765

原创 Leetcode——112. 路径总和

112. 路径总和给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。说明: 叶子节点是指没有子节点的节点。示例: 给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 / / \ 11 13 4 / \ ...

2018-08-16 21:36:47 159

原创 Leetcode——99. 恢复二叉搜索树

99. 恢复二叉搜索树二叉搜索树中的两个节点被错误地交换。请在不改变其结构的情况下,恢复这棵树。示例 1:输入: [1,3,null,null,2] 1 /3 \ 2输出: [3,1,null,null,2] 3 /1 \ 2示例 2:输入: [3,1,4,null,null,2] 3 / \1 4 / 2...

2018-08-16 21:06:30 335

原创 Leetcode——106. 从中序与后序遍历序列构造二叉树

106. 从中序与后序遍历序列构造二叉树根据一棵树的中序遍历与后序遍历构造二叉树。注意: 你可以假设树中没有重复的元素。例如,给出中序遍历 inorder = [9,3,15,20,7] 后序遍历 postorder = [9,15,7,20,3] 返回如下的二叉树: 3 / \9 20 / \ 15 7代码:/** * Definit...

2018-08-16 20:10:54 291

原创 Linux文件目录管理命令

Linux文件目录管理命令1.touch命令touch命令用于创建空白文件或设置的时间,格式为“ touch [选项 ] [文件 ]”。2.mkdir命令mkdir命令用于创建空白的目录,格式为“ mkdir [选项 ] 目录”。系统中, 文件夹是最常见的类型之一。除了能创建单个空白目录外,mkdir命令还可以结合 -p参数来递归创建出具有嵌套叠层关系的文件目录。 3...

2018-08-16 17:38:22 448

原创 Linux文本文件编辑命令

Linux文本文件编辑命令1.cat命令cat命令用于查看纯文本件(内容较少的),格式为“ cat [选项 ] [文件 ]”。2.more命令more命令用于查看纯文本件(内容较多的),格式为“ more [选项 ]文件”。3.head命令head命令用于查看纯文本档的前 N行,格式为“ head [选项 ] [文件 ]”。4.tail命令tail命令用于查看纯文本...

2018-08-16 16:37:23 2558

原创 Linux工作目录切换命令

Linux工作目录切换命令1.pwd命令pwd命令用于显示户当前所处的工作目录,格式为“ pwd [选项 ]”。2.cd命令cd命令用于切换工作路径,格式为“ cd [目录名称 目录名称 ]”。3.ls命令ls命令用于显示目录中的文件信息,格式为“ ls [选项 ] [文件 ] ”。所处的工作目录不同,当前工作目录下的文件肯定也不同。使用 ls命令的““ -a”...

2018-08-16 16:15:41 7474

原创 Linux系统状态检测命令

Linux系统状态检测命令1.ifconfig命令ifconfig命令用于获取网卡配置与络状态等信息,格式为“ ifconfig [网络设备 ] [参数 ]”。2.uname命令uname命令用于查看系统内核与版本等信息,格式为“ uname [-a]”。3.uptime命令uptime用于查看系统的负载信息,格式为 uptime。4.free命令free用于显...

2018-08-16 11:02:44 420

原创 Linux系统工作命令

Linux常用的系统工作命令1. echo命令echo命令用于在终端输出字符串或变量提取后的值,格式为“ echo [字符串 | $变量 ]”。 2.date命令date命令用于显示及设置系统的时间或日期,格式为“ date [选项 ] [+指定的格式 指定的格式 ]”date命令中常见的参数格式及作用如表: 3.reboot命令reboot命令用于重启系统,...

2018-08-16 10:36:32 219

转载 java中三种常见内存溢出错误的处理方法

java中三种常见内存溢出错误的处理方法jvm管理的内存大致包括三种不同类型的内存区域:Permanent Generation space(永久保存区域)Heap space(堆区域)Java Stacks(Java栈)。其中永久保存区域主要存放Class(类)和Meta的信息,Class第一次被Load的时候被放入PermGen space区域,Class需要存储的内容主要...

2018-08-15 21:51:22 495

原创 Leetcode——110. 平衡二叉树

110. 平衡二叉树给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / \9 20 / \ 15 7返回 true 。示例 2:给定二叉树 [1,2,2,3,3,null,nu...

2018-08-15 21:31:33 693

原创 Leetcode——145. 二叉树的后序遍历

145. 二叉树的后序遍历给定一个二叉树,返回它的 后序 遍历。示例: 输入: [1,null,2,3] 1 \ 2 /3 输出: [3,2,1] 代码:/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode...

2018-08-15 21:11:12 582

原创 Leetcode——144. 二叉树的前序遍历

144. 二叉树的前序遍历给定一个二叉树,返回它的 前序 遍历。示例: 输入: [1,null,2,3] 1 \ 2 /3 输出: [1,2,3] 代码:/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode l...

2018-08-15 21:04:08 628

原创 Leetcode——111. 二叉树的最小深度

111. 二叉树的最小深度给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \9 20 / \ 15 7返回它的最小深度 2. 代码:/** * Definition for a bi...

2018-08-13 22:33:16 167

原创 Leetcode——105. 从前序与中序遍历序列构造二叉树

105. 从前序与中序遍历序列构造二叉树根据一棵树的前序遍历与中序遍历构造二叉树。注意: 你可以假设树中没有重复的元素。例如,给出 前序遍历 preorder = [3,9,20,15,7] 中序遍历 inorder = [9,3,15,20,7] 返回如下的二叉树: 3 / \ 9 20 / \15 7代码:/** * Defin...

2018-08-13 22:15:49 270

原创 Leetcode——108. 将有序数组转换为二叉搜索树

108. 将有序数组转换为二叉搜索树将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。示例:给定有序数组: [-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树: 0 / \ -3 9...

2018-08-13 21:56:04 117

原创 Leetcode——104. 二叉树的最大深度

104. 二叉树的最大深度给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例: 给定二叉树 [3,9,20,null,null,15,7], 3 / \9 20 / \ 15 7返回它的最大深度 3 。 代码:/** * Definition for a bi...

2018-08-13 21:37:12 618

原创 Leetcode——100. 相同的树

100. 相同的树给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例 1:输入: 1 1 / \ / \2 3 2 3[1,2,3], [1,2,3]输出: true示例 2: 输入: 1 1 / ...

2018-08-13 20:57:41 215

原创 Leetcode——98. 验证二叉搜索树

98. 验证二叉搜索树给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。 节点的右子树只包含大于当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 示例 1:输入: 2 / \1 3输出: true示例 2: 输入: 5 / \1 4 / \ 3 ...

2018-08-13 20:50:00 142

原创 Leetcode——94. 二叉树的中序遍历

94. 二叉树的中序遍历给定一个二叉树,返回它的中序 遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3输出: [1,3,2] 代码:/** * Definition for a binary tree node. * public class TreeNode { * int val; * Tr...

2018-08-13 20:42:04 233

原创 Leetcode——101. 对称二叉树

101. 对称二叉树给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3 3/** * Definition f...

2018-08-13 20:11:11 164

空空如也

空空如也

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

TA关注的人

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