摘要:
7 原型模式 7.1 原型模式概述 Prototype Pattern:使用原型实例指定待创建对象的类型,并且通过复制这个原型来创建新的对象。 原型模式的工作原理:将一个原型对象传给创建者,该创建者通过请求原型对象复制自己来实现创建过程。 原型模式是一种”另类“的创建型模式,创建新对象(即克隆对象) 阅读全文
摘要:
6 单例模式 6.1 单例模式概述 Singleton Patter:确保一个类只有一个实例,并提供一个全局访问点来访问这个唯一实例。 单例模式有3个要点: 该类只能有一个实例 该类必须自行创建这个实例 该类必须向整个系统提供这个实例 单例模式结构图如下所示: 6.2 单例模式实现 6.2.1 单例 阅读全文
摘要:
3 简单工厂模式 3.1 创建型模式 ==Creational Pattern== 关注对象的创建过程,对类的实例化过程进行了抽象,将软件模块中对象的创建和对象的使用分离,对用户隐藏了类的实例的创建细节。创建型模式描述如何将对象的创建和使用分离,让用户在使用对象时无须关心对象的创建细节,从而降低系统 阅读全文
摘要:
1 设计模式概述 1.1 设计模式的定义与分类 设计模式的定义 Design patterns are descriptions of communicating objects and classes that are customized to solve a general design pr 阅读全文
摘要:
LeeCode 动态规划(四) LeeCode 198:打家劫舍 题目描述 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数 阅读全文
摘要:
完全背包问题 题目描述 有 n 件物品和容量为 w 的背包,给你两个数组 weights 和 values,分别表示第 i 件物品的重量和价值,每件物品可以放入多次,求解将哪些物品装入背包可使得物品价值总和最大? 完全背包问题和01背包唯一的不同就是物品有无限个, 可以多次放入背包 建立模型 确定 阅读全文
摘要:
Java8 Stream流编程 Stream 使用一种类似于SQL语句从数据库查询数据的直观方式来提供对 Java 集合运算和表达的高阶抽象。得益于 Lambda 所带来的函数式编程,Stream API 可以极大的提高 Java 程序员的生产力。关于函数式编程可以查看我的另一篇博客 Java 函数 阅读全文
摘要:
Class对象 类对象支持两种操作:属性引用和实例化。 实例对象 实例对象有两种有效的属性名称:数据属性和方法。 数据属性,不需要声明,像局部变量一样,将在第一次被赋值时产生 方法是 “从属于” 对象的函数 方法对象 方法的特殊之处在于实例对象会作为函数的第一个参数被传入。 即 $x.f() \Le 阅读全文
摘要:
Design as You See FIT 作者及会议名称:DATE 2009, Daniel Holcomb, UC Berkeley 本文的重点贡献:提出了一种新方法计算时序电路发生系统级故障对输出产生影响的概率。 CFIT: 计算组合单元的故障率,结合逻辑屏蔽、时序屏蔽和电气屏蔽。组合单元对整 阅读全文
摘要:
01背包问题 题目描述 有 n 件物品和容量为 w 的背包,给你两个数组 weights 和 values ,分别表示第 i 件物品的重量和价值,每件物品只能使用一次,求解将哪些物品装入背包可使得物品价值总和最大? 建立模型 确定dp数组及下标的含义,数组的含义为从第 [0, i - 1] 个物品中 阅读全文