摘要:
1 MySQL 表 1.1 索引组织表 在 InnoDB 存储引擎中,表都是根据主键顺序存放的,这种存储方式称为索引组织表。 InnoDB存储引擎中,每张 MySQL表 都有一个唯一主键,如果创建表时没有显式定义主键,InnoDB存储引擎会按照下述规则选择或创建主键: 首先判断表中是否有非空且唯一的 阅读全文
摘要:
T1:判断两个事件是否存在冲突 思路:判断两个区间是否有交集 public boolean haveConflict(String[] event1, String[] event2) { // 比较 Unicode 字符, 使用 compareTo 函数 if (event1[1].compare 阅读全文
摘要:
13 外观模式 13.1 外观模式概述 Facade Pattern: 为子系统的接口提供一组统一的入口。外观模式定义了一个高层接口,这个接口使得子系统的更加容易使用。 在外观模式中,一个子系统的外部与其内部通信通过一个统一的外观类进行,外观类将客户类与子系统的内部复杂性分隔,使得客户类只需要与外观 阅读全文
摘要:
12 装饰模式 12.1 装饰模式概述 Decorator Pattern: 动态地给一个对象增加一些额外的职责。提供一种比使用子类更加灵活的方案来扩展功能。 装饰模式是一种用于替代继承的技术,通过一种无须定义子类的方式给对象动态增加职责,使用对象之间的关联关系替代类之间继承关系。 装饰模式结构图如 阅读全文
摘要:
问题描述 最近需要在 windows 平台使用 C++ 多线程编程,编译时提示错误 thread is not a member of std, or you maybe forget '#include <thread>' 下面是出现此问题的环境背景: 已经添加 thread 头文件 编译时已添加 阅读全文
摘要:
堆 堆是一种基于树的数据结构,是一种完全二叉树,堆中的所有的节点都按照特定的顺序排列。 在堆数据结构中,如果任意父节点的值都大于其子节点,则会产生一个大顶堆;反之,如果任意父节点的值都小于其子节点,则会产生一个小顶堆 。 上述这种父节点与子节点之间的关系被称为堆属性 。 二叉堆 由于二叉堆是一棵完全 阅读全文
摘要:
11 组合模式 11.1 组合模式概述 Composite Pattern: 组合多个对象形成树形结构以表示具有部分-整体关系的层次结构。组合模式使得客户端可以统一处理单个对象和组合对象。 组合模式关注那些包含叶子构件和容器构件的结构以及它们的组织形式,在叶子构件中不包含成员对象,而容器构建中可以包 阅读全文
摘要:
10 桥接模式 10.1 桥接模式概述 Bridge Pattern: 将抽象部分与它的实现部分解耦,使得两者都能够独立变化。 桥接模式是一种很实用的结构型模式,如果系统中某个类存在两个独立变化的维度,通过桥接模式将这两个维度分离出来,使两者可以独立扩展。 桥接模式结构图如下所示: 10.2 桥接模 阅读全文
摘要:
9 适配器模式 9.1 结构型模式 结构型模式(Structural Pattern) 关注如何将现有类或对象组织在一起形成更强大的结构。结构型模式根据描述目标不同可以分为两种: 类结构型模式:关心类的组合,由多个类组成,一般只存在继承和实现关系 对象结构型模式:关心类与对象的组合,通过关联关系在一 阅读全文
摘要:
8 建造者模式 8.1 建造者模式概述 Builder Pattern:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 建造者模式可以将部件本身和它们的组装过程分开,关注如何一步一步地创建一个包含多个组成部分的复杂对象,用户只需指定复杂对象的类型即可得到该对象,而无须知道 阅读全文