04 2019 档案
摘要:定义:定义了对象之间的一对多依赖,让多个观察者对象同时监听某一个主题对象,当主题对象发生变化时,它的依赖者(观察者)都会收到通知并更新 适用场景: 关联行为场景,建立一套触发机制 优点: 1.观察者和被观察者之间建立一个抽象的耦合 2.观察者模式支持广播通讯 缺点: 观察者之间有过多的细节依赖,提高
阅读全文
摘要:对于一组数据,主要支持两种动作: union isConnected 由子数指向父的并差集 测试: 第三种:(size) 第四种:(rank) 第五种:(路径压缩) 第六种:(递归)
阅读全文
摘要:Trie查询每个条目的时间复杂度,和字典中一共有多少条无关。 时间复杂度为O(W) w为查询单词的长度 测试: search可以搜索文字或正则表达式字符串,字符串只包含字母.或者a-z. Trie和映射
阅读全文
摘要:public static String concatJson(String[] keys,String[] values,String[] alreadyJsonKeys){ if(keys==null|| values==null) return null; if(keys.length!=values.length) ...
阅读全文
摘要:线段树不是完全二叉树,是平衡二叉树 堆也是平衡二叉树 堆满二叉树: h层,一共有2^h-1个节点(大约是2^h) 最后一层(h-1层)有2^(h-1)个节点 最后一层的节点数大致等于前面所有层节点之和 如果区间有n个元素,数组表示需要4n的空间 不考虑添加元素,使用4n的静态空间即可 接口: 测试:
阅读全文
摘要:MVC工作原理: 模型-视图-控制器(MVC)是一个以设计界面应用程序为基础的设计模式。它主要通过分离模型、视图及控制器在应用程序中的角色将业务逻辑从界面中解耦。通常,模型负责封装应用程序数据在视图层展示。视图仅仅只是展示这些数据,不包含任何业务逻辑。控制器负责接收来自用户的请求,并调用后台服务(m
阅读全文
摘要:1.pom.xml配置信息 测试类: sql语句xml配置: 数据库访问配置: 表字段: 用映射方法写: mapper: 视图对象vo: 语句: 测试:
阅读全文
摘要:普通队列:先进先出,后进后出 优先队列:出队顺序和入队顺序无关,和优先级相关。 堆中某个节点的值总是不对于其父节点的值,最大堆。 测试 给定一个非空整数的数组,返回其中出现频率前k高的元素 java自定义:
阅读全文
摘要:1.考虑不重复元素,重复元素不添加 2.重复元素添加
阅读全文
摘要:定义了算法家族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化不会影响到使用算法的用户 类型:行为型 使用场景: 系统有很多类,而他们的区别仅仅在于他们的行为不同。 一个系统需要动态地在集中算法中选择一种 优点: 1.开闭原则 2.避免使用多重条件转义语句 3.提高算法的保密性和安全性 缺
阅读全文
摘要:定义:提供一种方法,顺序访问一个集合对象中的各个元素,而又不暴露该对象的内部表示。 类型:行为型 适用场景: 访问一个集合对象的内容而无需暴露它的内部表示 为遍历不同的集合结构提供一个统一的接口 优点: 分离了集合对象的遍历行为 缺点: 类的个数成对增加
阅读全文
摘要:定义:定义了一个算法的骨架,并允许子类为一个或多个步骤提供实现 模板方法使得子类可以在不改变算法的结构的情况下,重新定义算法的某些步骤 类型:行为型 一次性实现一个算法的不变的部分,并将可变的行为留给子类实现 各子类中公共的行为被提取出来并集中到一个公共父类中,从而避免代码重复 优点: 提高复用性
阅读全文
摘要:import java.awt.Graphics; import java.awt.Image; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import javax.imageio.ImageIO; ...
阅读全文
摘要:定义:将抽象部分与它的具体实现部分分离,使他们都可以独立的变化 通过组合的方式建立两个类之间联系,而不是继承 类型:结构型 适用场景: 抽象和具体实现之间增加更多的灵活性 一个类存在两个(或多个)独立变化的维度,且这两个(或多个)都需要独立进行拓展 不希望使用继承,或因为多层继承导致系统类的个数剧增
阅读全文
摘要:set: 文件操作: 有序集合中的元素具有顺序性,基于搜索树的实现 无序集合中的元素没有顺序,基于哈希表实现 二分搜索树的映射实现: 测试: 有序映射中的键具有顺序性, 基于搜索树的实现 无序映射中的键没有顺序性 基于哈希表实现
阅读全文
摘要:@Intercepts({@Signature(type=Executor.class,method="update",args={MappedStatement.class,Object.class}), @Signature(type=Executor.class,method="query",
阅读全文
摘要:定义:将对象组合成树形结构以表示 部分--整体的层次结构 组合模式使客户端对单个对象和组合对象保持一致的方式处理 类型:结构型 优点: 1.清楚地定义分层次的复杂对象,表示对象的全部去或部分层次 2.让客户端忽略了层次的差异,方便对整个层次结构进行控制 3.简化客户端代码 4.符合开闭原则
阅读全文
摘要:public class HttpServletRequestUtil { //转换请求参数 public static int getInt(HttpServletRequest request, String name) { //整型 try { return Integer.decode(request.getParameter(name)); } catch (E...
阅读全文