06 2019 档案

摘要:第二章 Java内存区域与内存溢出异常 运行时数据区域:程序计数器、虚拟机栈、本地方法栈、堆、方法区; 程序计数器 归属:线程私有;内容:正在执行Java方法,则指向当前线程正在执行的字节码地址;本地方法,则程序计数器为空;异常:唯一无OutOfMemoryError 虚拟机栈 归属:线程私有;内容 阅读全文
posted @ 2019-06-30 22:20 由走啦啦啦 阅读(117) 评论(0) 推荐(0)
摘要:参考博文:https://www.cnblogs.com/jiaoyiping/p/9769554.html 侵权删除 2019-06-28 11:22:29 访问者模式 Visitor 分派概念的介绍:(访问者模式中使用了双分派) 静态分派:发生在编译时期,分派根据静态类型信息发生。例如,方法重载 阅读全文
posted @ 2019-06-28 11:38 由走啦啦啦 阅读(105) 评论(0) 推荐(0)
摘要:二叉树 Binary Tree 2019-06-27 20:52:02 阅读全文
posted @ 2019-06-27 20:53 由走啦啦啦 阅读(141) 评论(0) 推荐(0)
摘要:有序平行数组实现符号表 2019-06-27 17:35:23 阅读全文
posted @ 2019-06-27 17:36 由走啦啦啦 阅读(193) 评论(0) 推荐(0)
摘要:双向链表实现符号表 2019-06-27 16:44:51 阅读全文
posted @ 2019-06-27 16:45 由走啦啦啦 阅读(160) 评论(0) 推荐(0)
摘要:参考博客:https://www.cnblogs.com/java-my-life/archive/2012/06/01/2526972.html 侵权删除 2019-06-27 15:10:03 什么是命令模式:一个请求或者操作封装到一个对象中。命令模式允许系统使用不同的请求把客户端参数化,对请求 阅读全文
posted @ 2019-06-27 15:22 由走啦啦啦 阅读(131) 评论(0) 推荐(0)
摘要:参考博文: https://www.cnblogs.com/kym/archive/2009/04/06/1430078.html 侵权删除 职责链 所有具体处理者对象形成一种单链表的结构。 2019-06-27 10:53:13 什么是职责链:一个请求可能有多个接受者,但是最后真正的接受者只有一个 阅读全文
posted @ 2019-06-27 11:03 由走啦啦啦 阅读(174) 评论(0) 推荐(0)
摘要:在本例中实现了堆数据结构,sort()方法排序堆实例。 只使用堆排序,静态方法 阅读全文
posted @ 2019-06-26 22:35 由走啦啦啦 阅读(154) 评论(0) 推荐(0)
摘要:union-find :用于解决触点之间的连通性问题,有一下三种算法。 阅读全文
posted @ 2019-06-26 16:52 由走啦啦啦 阅读(652) 评论(0) 推荐(0)
摘要:import java.util.Iterator; /** * @ClassName LinkedQueue * @Author wangyudi * @Date 2019/7/20 13:47 * @Version 1.0 * @Description * 链表是实现队列 FIFO * 成员变量:队头引用 first、队尾引用 last、大小 count、节点内部类 Nod... 阅读全文
posted @ 2019-06-26 15:34 由走啦啦啦 阅读(122) 评论(0) 推荐(0)
摘要:import java.util.Iterator; /** * 链表实现下压栈 * 成员变量:栈顶指针 first、节点数量 count 、节点内部类 Node() * 私有方法 * 公开方法:入栈 push、出栈 pop、大小 size、判断为空 isEmpty * 要求:泛型、迭代器 */ public class LinkedStack implements Itera... 阅读全文
posted @ 2019-06-26 15:12 由走啦啦啦 阅读(134) 评论(0) 推荐(0)
摘要:import java.util.Iterator; /** * 动态数组实现下压栈 * 成员变量:容器数组arr,元素个数count * 私有方法:调整数组大小resize() * 公开方法:添加元素push()、删除元素pop()、获取大小size()、判断是否为空isEmpty() * 要求:实现泛型、迭代器、 */ public class ArrayStack imple... 阅读全文
posted @ 2019-06-26 14:48 由走啦啦啦 阅读(118) 评论(0) 推荐(0)
摘要:import java.util.Iterator; /** * 动态数组 * 成员变量:容器数组arr,元素个数count * 私有方法:调整数组大小resize() * 公开方法:添加元素add()、删除元素delete()、获取大小size()、判断是否为空isEmpty() * 要求:实现泛型、迭代器、 */ public class DynamicArray implem... 阅读全文
posted @ 2019-06-26 14:38 由走啦啦啦 阅读(121) 评论(0) 推荐(0)
摘要:参考博客:https://www.cnblogs.com/airwindow/archive/2012/06/25/2560811.html 侵权删除 迭代器 Iterator 2019-06-26 10:31:44 什么是迭代器模式:访问一个聚合对象的内容而无需暴露它的内部表示。例如,对于Arra 阅读全文
posted @ 2019-06-26 10:47 由走啦啦啦 阅读(139) 评论(0) 推荐(0)
摘要:参考博文:https://www.cnblogs.com/jingmoxukong/p/4221087.html 侵权删除 2019-06-25 13:36:54 组合模式 Component 什么是组合模式:将对象组合成“树形”结构以表示“部分-整体”的层次结构。使得客户对单个对象或组合对象的使用 阅读全文
posted @ 2019-06-25 14:12 由走啦啦啦 阅读(113) 评论(0) 推荐(0)
摘要:参考博客文章:https://www.cnblogs.com/pony1223/p/7518226.html 状态模式 State 2019-06-25 11:18:28 什么是状态模式:允许一个对象在其内部状态改变时自动改变其行为。 对象中部分行为是随着状态的变化而变化的,将变化的这部分抽象出来, 阅读全文
posted @ 2019-06-25 11:36 由走啦啦啦 阅读(235) 评论(0) 推荐(0)
摘要:参考博文:https://www.cnblogs.com/cenyu/p/6289209.html 侵权删除 代理模式 Proxy 2019-06-24 12:40:59 什么是代理模式:提供了对目标对象另外的访问方式;即通过代理对象访问目标对象。这样做的好处是:可以在目标对象实现的基础上,增强额外 阅读全文
posted @ 2019-06-24 12:46 由走啦啦啦 阅读(64) 评论(0) 推荐(0)
摘要:参考博文:https://www.cnblogs.com/chenssy/p/3348520.html 2019-06-24 11:39:45 中介模式:处理对象之间多对多的复杂关系。 中介模式成员:抽象成员、具体成员、抽象中介者、具体中介者。 成员:成员含有中介者的抽象引用,通过中介者对其他对象进 阅读全文
posted @ 2019-06-24 11:47 由走啦啦啦 阅读(77) 评论(0) 推荐(0)
摘要:参考博文:https://www.cnblogs.com/java-my-life/archive/2012/04/07/2433939.html#4253487 侵权必删 建造方法 Builder 2019-06-24 10:38:21 什么是建造模式:将一个产品的内部表象和产品的生产过程分割,从 阅读全文
posted @ 2019-06-24 10:58 由走啦啦啦 阅读(112) 评论(0) 推荐(0)
摘要:参考博文:https://www.cnblogs.com/java-my-life/archive/2012/04/13/2442795.html 侵权必删 适配器模式 Adapter 2019-06-24 09:15:08 什么是适配器:将一个接口转换成客户端期望地接口,或认为将原接口转换成目标接 阅读全文
posted @ 2019-06-24 09:45 由走啦啦啦 阅读(118) 评论(0) 推荐(0)
摘要:享元模式 FlyWeight 2019-06-21 14:47:30 参考博文:https://blog.csdn.net/zhiduoniu/article/details/18267451 侵权必删 什么是享元模式:以共享的方式高效地支持大量细粒度对象的重用。 适用性:大量细粒度对象存在的场合。 阅读全文
posted @ 2019-06-21 15:15 由走啦啦啦 阅读(134) 评论(0) 推荐(0)
摘要:单例模式 Singleton 参考:https://www.cnblogs.com/zuoxiaolong/p/pattern2.html 侵权删除 什么是单例模式:保证在程序运行周期,至多有一个该对象。 适用性:对象多次重复实例化的场景 单例模式分类:饿汉式、懒汉式、静态内部类 代码要点: 私有化 阅读全文
posted @ 2019-06-21 11:05 由走啦啦啦 阅读(98) 评论(0) 推荐(0)
摘要:package MergeSort; import ShellSort.ShellSort; import chooseSort.Example; /** * 归并排序 * 归并的含义:将两个有序的数组合并成一个有序数组 * 思想:通过递归的方法,将数组不断地分割,直到数组里只有一个元素时返回。 * 然后1 1归并 2 2归并 4 4归并 8 8 归并 */ public... 阅读全文
posted @ 2019-06-20 15:19 由走啦啦啦 阅读(121) 评论(0) 推荐(0)
摘要:package QuickSort; import MergeSort.MegerSort; import chooseSort.Example; /** * 快速排序 * 思想:分而治之; * 不断地以第一个元素为基准对当前数组进行分割,直到子数组只有一个元素 */ public class QuickSort extends Example { public void s... 阅读全文
posted @ 2019-06-20 15:19 由走啦啦啦 阅读(124) 评论(0) 推荐(0)
摘要:package ShellSort; import chooseSort.Example; /** * 希尔排序 * 思想:插入排序的变步长扩展版。以h..1为步长,将数组分为若干组,然后进行插入排序 * 解决了插入排序交换次数过多的问题。 */ public class ShellSort extends Example { @Override public vo... 阅读全文
posted @ 2019-06-20 15:18 由走啦啦啦 阅读(98) 评论(0) 推荐(0)
摘要:package chooseSort; /** * 选择排序 * 遍历剩余无序数组,找到最小值并交换到适当的位置 */ public class ChooseSort extends Example { @Override public void sort(Comparable[] a) { int n = a.length; int mi... 阅读全文
posted @ 2019-06-20 15:17 由走啦啦啦 阅读(121) 评论(0) 推荐(0)
摘要:package chooseSort; import java.util.Arrays; public class Example { public void sort(Comparable[] a){}; /** * 交换 * @param a * @param i * @param j */ public sta... 阅读全文
posted @ 2019-06-20 15:16 由走啦啦啦 阅读(157) 评论(0) 推荐(0)
摘要:参考博文:https://www.cnblogs.com/java-my-life/archive/2012/04/11/2439387.html 用于自身学习,侵权必删。 2019-06-20 10:28:14 原型模式 Prototype 什么是原型模式:同样用于解决new对象的问题,类似于工厂 阅读全文
posted @ 2019-06-20 10:55 由走啦啦啦 阅读(144) 评论(0) 推荐(0)
摘要:参考博文:https://www.cnblogs.com/toutou/p/4899388.html 侵权必删 什么是工厂模式:通过“对象创建”模式绕开new,来避免对象创建(new)过程中所导致的紧耦合(依赖具体类)。 适用性:使用new创建对象且导致紧耦合的场景。 思考:面向对象编程要以动态的思 阅读全文
posted @ 2019-06-19 11:57 由走啦啦啦 阅读(239) 评论(0) 推荐(0)
摘要:参考博文:https://www.cnblogs.com/NewWork/archive/2013/06/03/3260597.html 本文只为了便于自身学习,如有侵权立删。 桥模式 (Bridge) 什么是桥模式: 分离接口或类的抽象部分(稳定)和实现部分(变化、多种实现),然后通过桥连接(组合 阅读全文
posted @ 2019-06-18 20:57 由走啦啦啦 阅读(448) 评论(0) 推荐(0)
摘要:装饰者模式 Decorator 什么是装饰者模式:动态将职责附加到对象上,若要扩展功能,装饰者提供了比继承更具弹性的代替方案。 适用性:当采用类继承的方式会造成类爆炸的情况。如本文的例子中,基本饮料(被装饰者)可能有茶、水、牛奶等等、可以添加的(装饰者)有糖、果肉、珍珠等。 如果通过继承的方式,为每 阅读全文
posted @ 2019-06-18 17:48 由走啦啦啦 阅读(4409) 评论(1) 推荐(0)
摘要:观察者模式(observer) 什么是观察者模式:因为面向对象程序的本质是对象之间的相互协作,所以其中一个对象发生变化,另外的某些对象也应该做出相应的动作。观察者模式就是为了应对该情况:对象间存在一种一对多(一对一)的依赖关系,当该对象发生变化时,所有依赖它的对象都得到通知并自动更新。 适用性:对象 阅读全文
posted @ 2019-06-17 15:06 由走啦啦啦 阅读(215) 评论(0) 推荐(0)
摘要:参考博文:https://www.cnblogs.com/lewis0077/p/5133812.html 侵权删除 2019-06-17 11:39:49 策略模式(Strategy) 什么是设计模式:定义了一系列的算法(多种实现子类),并将每一个算法封装(通过父类策略引用访问具体子类的算法)起来 阅读全文
posted @ 2019-06-17 13:05 由走啦啦啦 阅读(131) 评论(0) 推荐(0)
摘要:2019-06-17 09:12:51 模板方法 (Template Method) 什么是模板方法:定义一个操作中算法的骨架(稳定),而将一些步骤的具体实现(变化)延迟到子类中。使子类可以不改变(复用)一个算法的结构(顶层逻辑),即可重定义该算法的某些特定步骤。 模板方法的组成:抽象父类:模板方法 阅读全文
posted @ 2019-06-17 09:37 由走啦啦啦 阅读(116) 评论(0) 推荐(0)