- 博客(18)
- 收藏
- 关注
原创 排序算法空间复杂度与时间复杂度总结
算法空间复杂度时间复杂度(平均/最坏)稳定性冒泡排序O(1)O(n2)/O(n2)稳定选择排序O(1)O(n2)/O(n2)不稳定插入排序O(1)O(n2)/O(n2)稳定希尔排序O(1)O(nlogn)/O(ns) (s为步长)不稳定快速排序O(logn)O(n*logn)/O(n2)不稳定归并排序O(n)O...
2019-08-07 17:29:33
584
原创 Java实现单例模式
**什么是单例模式(Singleton)?**单例模式:是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的一个类只有一个实例。即一个类只有一个对象实例。单例模式的四种实现方式饿汉模式/*饿汉模式 */class Singleton { private static Singleton o1= new Singl...
2019-08-07 16:55:17
167
原创 Ubuntu16.04下Linux的安装与配置
一、点击文件创建新的虚拟机二、选择自定义,点击下一步。三、默认单击下一步四、选择稍后安装,下一步。五、选择Linux操作系统,版本Ubuntu,下一步六、虚拟机名称可自己命名,位置也可以自定义安装路径,下一步七、默认下一步。八、默认下一步九、选择NAT,下一步十、默认下一步十一、默认下一步十二、选择创建新虚拟磁盘十三、选择单个文件,下一步十四、下一步...
2019-05-04 17:27:07
888
原创 Java栈的实现
栈的定义栈是限定仅在表的一端进行操作的线性表。 允许进行插入和删除元素操作的这一端称为栈顶,固定不变的另一端称为栈底。由于只能在栈顶进行插入和删除操作,所以栈中元素的最大特点就是 “先进后出”,即先入栈的元素在后面出栈。栈分为顺序栈与链式栈。栈的基本操作栈初始化:生成一个空栈;判断栈空与栈满:判断栈中元素是否为空或者满;入栈:向栈中添加元素;出栈:删除栈中元素;读取栈顶元素:获...
2019-03-31 13:30:54
344
原创 类加载器及类的加载机制
类加载器虚拟机设计团队把类加载阶段中的“通过一个类的全限定名来获取描述此类的二进制字节流”这个动作放在java虚拟机外部去实现,以便让应用程序自己决定如何获取所需要的类。实现这个动作的代码模块称为“类加载器”。JDK提供了三种类加载器,分别是Bootstrap ClassLoader(启动类加载器),ExtClassLoader(扩展类加载器),AppClassLoader(应用类加载器)。每...
2019-01-06 17:23:40
190
原创 Java泛型
什么是泛型?泛型主要是java SE 1.5的特性,泛型的本质就是参数化类型,所谓的参数化类型就是所操作的数据类型被指定为一个参数,这种参数可以在类,接口个方法的创建中用到,分别称为泛型类,泛型接口,泛型方法,泛型类与泛型方法具备可重用性,类型安全性和高效性,这是非泛型类和非泛型方法无法具备的。泛型的意义1,可以对类型进行自动检查(不是替换,仅仅进行类型安全检查!!)2,自动对类型进行类型...
2019-01-02 17:41:19
212
原创 Java实现简单的图书管理系统
简单的图书管理系统实现要求:1,以不同的角色进行登录(如学生,管理员)2,管理员要求实现增加学生信息,删除学生信息,上架图书,下架图书功能3,学生登录后实现借书,还书,查看图书功能。实现代码//定义图书类public class Book { private String name;//书名 private String writer;//作者 private ...
2018-12-30 15:31:42
13073
4
原创 类的加载过程
类加载的过程Java虚拟机中类加载的过程分为加载、验证、准备、解析、初始化五个阶段。加载“加载”是“类加载”过程的一个阶段,希望读者不要混淆这两个看起来很像的名词。加载阶段,虚拟机需完成以下三件事情:1)通过一个类的全限定名来获取定义此类的二进制字节流。2)将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构3)在内存中生成一个代表这个类的java.lang.Class对象,作...
2018-12-30 15:14:36
1083
原创 Java异常
什么是异常??异常即异常事件,在程序运行时所出现的错误。异常的层次结构如下图所示Throwable是所有异常类的父类,只有对象是此类(或其子类)的实例时,才能通过java虚拟机或throw语句抛出。Throwable有两个子类:Error和Exception,分别表示错误和异常。Exception 又分为运行时异常类和非运行时异常类。错误异常类异常说明Error...
2018-11-29 16:11:51
567
原创 Java类的继承,抽象,接口与多态
继承当我们定义很多部分具有相同属性和行为的类时,如果使用之前我们所讲类的定义方式进行定义,那么是 不是发现有大量的代码重复书写,为了允许使用现有的类的功能,并在无须改写原来的类的情况下,引入了继 承的概念。我们把允许重用现有类称为基类(或超类,父类),由基类派生出来的类称为派生类(子类)。比如:动物包括猫,狗,鱼,小鸟等。动物便是一个基类,猫,狗,鱼等都是动物类的派生类,也就是子类。java...
2018-11-22 10:57:38
411
原创 约瑟夫环问题
问题来历 据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。然而Josephus 和他的朋友并不想遵从。首先从一个人开始,...
2018-11-15 13:30:55
224
原创 java的包装类
包装类java中每个基本数据类型都有其对应的包装类,如下表:基本数据类型包装类型byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublebooleanBooleancharCharacter有缓存的包装类: Byte Short Integer Lon...
2018-11-07 14:23:34
162
原创 Java方法
方法声明修饰符 1 修饰符 2 … 返回值类型 方法名(形式参数表){方法体各语句}如:public static int insert(int a){return 0;}说明:(1)任何方法定义均含小括号,无参方法小括号不含任何内容。(2)修饰符包括方法的访问修饰符(如public)抽象方法修饰符,类方法修饰符等等。(3)形式参数规定方法需要多少参数,每个参数的类型信息。(...
2018-10-31 14:54:37
201
原创 数组
什么是数组?数组只是相同类型的,用一个标识符名称封装到一起的一个对象序列或基本数据类型数据序列。数组的定义定义一个整型数组(1)int[] a={1,2,3};//定义数组a里面含有1,2,3三个元素。(2)int[] a=new int[3]//定义一个可以存放3个元素的内存空间(2)int[] a=new int[]{1,2,3}...
2018-10-23 10:51:07
142
原创 循环语句
(1)while语句while(条件表达式){//循环体}说明:while语句当条件表达式为真时,则执行循环体,然后继续判断,直到条件表达式的值为假,执行后续语句;while语句的特点是先判断,后执行。例:输出1~30int n=1;while(n<=30){ System.out.println(n); n++;} System.out.printl...
2018-10-14 17:59:11
253
原创 条件判断选择语句
if语句(1)无else的if语句if(表达式){//需要执行的语句块}说明:如果表达式的结果为真,那么执行if中的语句否执行后续语句。例://如果n=1,则执行+1操作int n=1;if(n==1){n++;//n的结果为2}(2)带else的if语句if(表达式){//if块}else{//else块}说明:如果表达式为真,则执行if块的语句,否则执行...
2018-10-14 17:08:59
1285
原创 运算符
运算符的分类按操作数的数目分为3种(1)一元运算符:只需一个运算对象的运算符称为一元运算符。例:x=-x;//将x值取反赋给xy=++x;//将x值加1赋给y(2)二元运算符:需要两个运算对象的运算符号称为二元运算符。例:x=x+2;(3)三元运算符:需要三个运算对象。例:op1?op2:op3;//如果op1结果为真执行op2,否则执行op3算术运算符(1)双目算...
2018-10-04 16:10:33
1834
原创 JAVA基本数据类型及类型转换
java基本数据类型byte(字节型)-占1个字节short(短整型)-占2个字节int(整型)-占4个字节long(长整型)-占8个字节float(单精度型)-double(双精度型)-Boolean(布尔型)数据类型转换隐式转换若被赋值变量所占字节大于赋值变量,则自动转换为被赋值变量的数据类型。例:byte a=10; int b; b=a;式则字节型a隐式转换为...
2018-09-29 21:26:42
292
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人