自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Aprial的博客

The most fearful enemy is not having a firm conviction.

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

原创 KVM+libvirt环境搭建

KVM+libvirt环境搭建1. 查看系统是否支持kvm虚拟化egrep '(vmx|svm)' --color /proc/cpuinfo2. 安装KVM及相关依赖包:qemu-kvm, libvirt-bin, bridge-utils, sasl2-binsudo apt-get install qemu-kvm libvirt-bin bridge-utils sasl2-bin...

2019-07-19 17:03:02 1784

原创 Linux服务归纳总结

2019-03-30 22:44:05 212

原创 Linux服务思维导图

2019-03-30 22:30:39 456

原创 计算两个矩形的重叠面积:Java实现

一、解决思路我们分别用p1与p2表示矩形A的左下角和右上角,用p3和p4表示矩形B的左下角和右上角。考虑两个矩形不重叠的情况:(p1.x > p4.x) || (p2.x < p3.x) || (p1.y > p4.y) || (p2.y < p3.y)对上述条件取反,即可得到两个矩形重叠的条件。当正向思维比较繁杂时,不妨换种思路,也许会柳暗花明!二、代码实现矩形类:Rec...

2018-06-30 23:53:30 8713 1

转载 Java创建线程的方式

一、继承Thread类创建线程类1. 定义Thread类的子类,并重写该类的run()方法。该方法的方法体就代表了线程要完成的任务。因此,把run()方法称为执行体。2. 创建Thread子类的实例,即创建了线程对象。3. 调用线程对象的start()方法来启动该线程。public class FirstThreadTest extends Thread { private int i =...

2018-06-30 21:40:00 123

原创 String类重写的equals()方法

public boolean equals(Object anObject) { if (this == anObject) { return true; } if (anObject instanceof String) { String anotherString = (String)anObjec...

2018-06-21 19:41:00 2459

原创 “剑指Offer”数据结构篇:java实现

1. 数组中重复的数字/** * 【数组】解题思路:[1]从头到尾依次扫描这个数组中的每个数字。当扫描到下标为i的数字时,首先比较这个数字(用m表示)是否等于i。 * [2]如果是,则接着扫描下一个数字;如果不是,则将它和第m个数字进行比较。如果它和第m个数字相等,就找到了一个重复的数字,直 * 接返回;如果它和第m个数字不相等,就将第i个数字与第m个数字交换,把m放到属于它的位置,然后继续...

2018-06-15 15:24:38 171

原创 “剑指Offer”动态规划篇:java实现

1. 最长不含重复字符的子字符串/** * 【动态规划】解题思路:定义函数f(i)表示以第i个字符为结尾的不包含重复字符的子字符串的最大长度 * I. 如果第i个字符之前没有出现过,f(i) = f(i-1) + 1; * II. 如果第i个字符之前已经出现过:第i个字符和它上次出现在字符串中的位置的距离记为d * (1) 如果 d <= f(i-1),则f(i) = d;...

2018-06-10 21:56:52 296

原创 Comparable与Comparator接口

Comparable的定义:package java.lang;import java.util.*;public interface Comparable<T> { public int compareTo(T o);}Comparator的定义:package java.util;public interface Comparator<T> { ...

2018-06-09 16:26:54 106

原创 Java的抽象类和接口

抽象类是用来捕捉子类的通用特性的,它不能被实例化,只能被用作子类的超类。接口是抽象方法的集合,如果一个类实现了某个接口,那么它就继承了这个接口的抽象方法。抽象类和接口的对比(Java 8之前):参数抽象类接口默认的方法实现它可以有默认的方法实现接口完全是抽象的。它根本不存在方法的实现实现子类使用extends关键字来继承抽象类。如果子类不是抽象类的话,它需要提供抽象类中所有声明的方法的实现。子类使...

2018-06-08 23:51:42 145

原创 排序算法总结

算法稳定性:假设在数组中存在a[i] = a[j],若在排序之前,a[i]在a[j]的前面。排序之后,a[i]仍然在a[j]的前面。则这个算法就是稳定的。

2018-06-01 22:59:03 235

原创 快速排序:Java实现(必须掌握的两种实现方式)

第一种实现方式采用《算法导论》(原书第3版)中的快速排序算法,且参考了《剑指Offer》(第2版)中递归实现快速排序的代码,如下: public void quickSort_1(int[] data, int start, int end) { if (data == null || start < 0 || end > data.length - 1) { ...

2018-05-09 16:08:34 15443 7

原创 数组和链表的区别

一、数组和链表数组是一种具有固定大小的数据结构,它将相同数据类型的元素在内存中连续存放,可通过下标快速访问数组中的任何元素。适合查询操作,插入和删除元素代价昂贵。链表是一种采用链式结构的数据组织形式。它采用动态分配内存的形式实现,需要时可以用new分配内存空间,不需要时用delete释放已分配的空间,不会造成内存空间的浪费。适合插入和删除,查询操作开销较大。区别总结:数组静态分配内存,链表动态分配...

2018-04-29 18:10:20 9669

转载 正则表达式

1. 匹配验证:验证email是否正确public static void main(String[] args) { // 要验证的字符串 String str = "[email protected]"; // 邮箱验证规则 String regEx = "[a-zA-Z_]{1,}[0-9]{0,}@(([a-zA-z0-9]-*){1,}\\.){1,...

2018-04-25 17:43:25 115

转载 进程和线程的关系及区别

1. 定义进程(process)是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位。线程(thread)是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。线程基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其它线程共享进程所拥有的全部资源。一个线程可以创...

2018-04-23 23:38:52 278

原创 大数相乘:Java实现

public class MultiOfLargeNumbers { public String multiString(String str1, String str2){ // 判断正负号 int signOfStr1 = str1.startsWith("-") ? 1 : 0; int signOfStr2 = str2.starts...

2018-04-23 16:29:22 1081

原创 可以应用动态规划求解的问题具有的特点

在应用动态规划之前,要分析能否把大问题分解成小问题,分解后的每个小问题也存在最优解。如果把小问题的最优解组合起来能够得到整个问题的最优解,那么就可以考虑应用动态规划解决这个问题。此类问题具有的特点:【1】问题的目标是求一个问题的最优解;【2】整体问题的最优解依赖于各个子问题的最优解;【3】把大问题分解成若干个小问题,这些小问题之间还有相互重叠的更小的子问题;【4】从上往下分析问题,从下往上解决问题...

2018-04-22 20:52:41 5411

转载 Java单例模式

什么是设计模式呢?设计模式(Design Pattern)是一套被反复使用,多数人知晓的,经过分类编目的代码设计经验的总结。使用设计模式是为了可重用性代码,让代码更容易被他人理解,保证代码可靠性。一些关键词:单例:Singleton实例:instance同步:synchronized类加载器:ClassLoader单例模式的主要作用是保证在Java程序中,某个类只有一个实例存在。它使用一个私有的(...

2018-04-19 22:03:30 147

原创 最大子序列和:Java实现

如果a[i]是负的,那么它不可能代表最优序列的起点,因为任何包含a[i]作为起点的子序列都可以通过a[i+1]作起点而得到改进。任何负的子序列不可能是最优子序列的前缀。时间复杂度O(N)的解法: public int FindGreatestSumOfSubArray(int[] array) { if (array == null || array.length == 0)...

2018-04-16 21:25:11 1538

原创 Java基础【面试知识点总结】

1. 方法的重载(overload)和重写(Override)判断方法重载的依据:1)必须是在同一个类中;2)方法名相同,方法中参数的类型、个数和顺序至少有一个不同;3)与方法的修饰符,返回值没有关系。方法重写:如果子类对从父类继承的方法不满意,可以重写此方法。1)返回值类型,方法名,参数的类型和个数都要与从父类继承的方法相同,才叫方法的重写;2)子类中重写的方法不能缩小父类方法的访问权限...

2018-04-16 17:18:53 199

原创 二叉树(Binary Tree)的遍历:Java实现

遍历二叉树的过程实质上是把二叉树的节点进行线性排列的过程。二叉树的特点:二叉树的第i层至多有2^(i-1)个节点,其中i>=1;深度为n的二叉树至多有2^n-1个节点,至少有n个节点,其中n>=1;对于任意一棵二叉树而言,其叶子节点数目为N0,度为2的节点数目为N2,则满足以下关系:N0=N2+1;具有n个节点的完全二叉树的深度:[log2n]+1完全二叉树:只有最下面的两层节点度小于...

2018-04-16 10:23:05 750

原创 U盘安装CentOS7查看u盘设备名称的命令

安装CentOS查看U盘设备名称。

2017-03-07 09:45:38 10915

一文精通Golang基础语法

一文精通Golang基础语法

2021-07-01

空空如也

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

TA关注的人

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