上一页 1 2 3 4 5 6 7 ··· 11 下一页
摘要: 建造者模式 建造者模式(Builder Pattern):将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 建造者模式是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节。建造者模式属于对象创建型模式。根据中 阅读全文
posted @ 2018-09-30 16:30 J1ac 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 给一非空的单词列表,返回前 k 个出现次数最多的单词。 返回的答案应该按单词出现频率由高到低排序。如果不同的单词有相同出现频率,按字母顺序排序。 示例 1: 示例 2: 注意: 扩展练习: 【说明】最近尝试看了一些java,感觉的确要比C++简单不少,也尝试着使用一些java集合做些题目,这道题本身 阅读全文
posted @ 2018-09-30 11:47 J1ac 阅读(371) 评论(0) 推荐(0) 编辑
摘要: 在看java的io类设计的时候看到了其中对于FileInputStream,BufferedInputStream以及相关io包装类的设计,想起来设计模式里面还有这么重要的一个类,特来此用C++也总结一下。 装饰器模式 一般有两种方式可以实现给一个类或对象增加行为: 1. 继承机制,使用继承机制是给 阅读全文
posted @ 2018-09-28 21:45 J1ac 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 策略模式 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。 在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。 C++实现代码: # 阅读全文
posted @ 2018-09-24 19:33 J1ac 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 单例模式 单例模式(Singleton Pattern):单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,它提供全局访问的方法。 单例模式的要点有三个:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。单例模式是一 阅读全文
posted @ 2018-09-24 19:08 J1ac 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 状态模式 在状态模式(State Pattern)中,类的行为是基于它的状态改变的。这种类型的设计模式属于行为型模式。 在状态模式中,我们创建表示各种状态的对象和一个行为随着状态对象改变而改变的 context 对象。 C++实现代码: #include<iostream> #include<str 阅读全文
posted @ 2018-09-24 17:25 J1ac 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 命令模式 命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。 C++实现: #include<iostream> #include<st 阅读全文
posted @ 2018-09-24 17:03 J1ac 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 抽象工厂模式 抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在抽象工厂模式中,接口是负责创建一个相关对象的工厂,不需要显式指定它们的类。每个生成的工厂 阅读全文
posted @ 2018-09-24 16:36 J1ac 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 观察者模式 当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时,则会自动通知它的依赖对象。观察者模式属于行为型模式。 C++代码: #include<iostream> #include<vector> using namespace std; 阅读全文
posted @ 2018-09-24 11:50 J1ac 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 工厂模式 工厂模式(Factory Pattern)是最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。 C++实现代码: #include<iostrea 阅读全文
posted @ 2018-09-24 11:04 J1ac 阅读(163) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 11 下一页