摘要: 一、原理 每一步将一个待排序的记录,按其关键码值得大小插入前面已经排序的文件中适当的位置上,直到全部插入完为止。 二、代码实现 java package com.jdk8.SortTest; public class InsertSort { public static void doInsertS 阅读全文
posted @ 2019-02-02 22:52 IT-飞鹰 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 一、原理 每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)的元素,然后放到已排序序列的末尾。以此类推,直到全部待排序的数据元素排完。 二、代码实现 运行结果如下: 三、复杂度分析 3.1、时间复杂度分析 ​ 选择排序的交换操作 阅读全文
posted @ 2019-02-02 22:47 IT-飞鹰 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 一、原理 1、比较相邻的元素。如果第一个比第二个大,就交换他们两个。 2、对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点上,最后的元素即是最大的数。 3、针对所有元素重复以上的步骤,除了最后一个。 4、持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。 二、 阅读全文
posted @ 2019-02-02 22:40 IT-飞鹰 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 一、简单介绍 编写代码过程中,使用"+"和"contact"比较普遍,但是它们都不能满足大数据量的处理,一般情况下有一下四种方法处理字符串拼接,如下: 1、 加号"+" 2、 的 方法 3、 的 方法 4、 的 方法 二、测试代码参考 类 测试类: 测试结果如下: 1、 方法1 "+"号和方法2 方 阅读全文
posted @ 2019-01-06 23:40 IT-飞鹰 阅读(602) 评论(0) 推荐(0) 编辑
摘要: 上文讲过观察者模式,尽管已经用了依赖倒转原则,但是"抽象通知者"还是依赖"抽象观察者",也就是说万一没有了抽象观察者这样的接口,通知的功能就完不成了。另一方面,每个具体观察者不一定是要调用"更新"方法。此时java利用反射即可实现,具体代码如下所示: 类 抽象类 类 类 类 类 阅读全文
posted @ 2019-01-06 21:13 IT-飞鹰 阅读(586) 评论(0) 推荐(0) 编辑
摘要: 一、定义 观察者模式即发布-订阅模式(Publish/Subscribe):定义了一种一对多的依赖关系,让多个观察者对象同事监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。 观察者模式结构图,如下图1-1所示: 图 1-1 二、实例展示 Subjcet 阅读全文
posted @ 2018-12-31 17:58 IT-飞鹰 阅读(507) 评论(0) 推荐(0) 编辑
摘要: 一、定义 建造者模式(Builder) : 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 建造者模式结构图,如下图1-1所示: 图 1-1 二、实例展示 Product类:产品类,由多个部件组成。 Builder类:抽象建造者类,确定产品由两个部件PartA和PartB 阅读全文
posted @ 2018-12-09 22:42 IT-飞鹰 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 一、定义 外观模式(Facade) : 为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 外观模式结构图: 未用外观模式时的情景,如下图1-1所示: 图 1-1 使用外观模式时的情景,如下图1-2所示: 图 1-2 通过外观模式来组织细粒度的服务 阅读全文
posted @ 2018-12-09 00:08 IT-飞鹰 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 一、单体应用架构概念 一个归档包(可以是JAR、WAR、EAR或其它归档格式)包含所有功能的应用程序,通常称为单体应用。 而架构单体应用的方法论,就是单体应用架构。 二、单体架构示意图 三、单体应用架构的优缺点 1. 优点 便于共享:单个归档文件包含所有功能,便于在团队之间以及不同的部署阶段之间共享 阅读全文
posted @ 2018-12-02 23:35 IT-飞鹰 阅读(1070) 评论(0) 推荐(0) 编辑
摘要: 一、Swagger简介 在日常的工作中,我们往往需要给前端(WEB端、IOS、Android)或者第三方提供接口,这个时我们就需要提供一份详细的API说明文档。但维护一份详细的文档可不是一件简单的事情。首先,编写一份详细的文档本身就是一件很费时费力的事情,另一方面,由于代码和文档是分离的,所以很容易 阅读全文
posted @ 2018-12-02 17:37 IT-飞鹰 阅读(246) 评论(0) 推荐(0) 编辑