![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
I____KNOW
在校大学生,小菜鸟,需要学习与进步
展开
-
c++设计模式之抽象工厂模式
抽象工厂模式抽象工厂模式,就好比是多个工厂方法模式的叠加。抽象工厂创建的是一系列相关的对象,其中创建的实现其实就是采用的工厂方法模式。在工厂Factory中的每一个方法,就好比是一条生产线,而生产线实际需要生产什么样的产品,这是由Factory1和Factory2........去决定的,这样便延迟了具体子类的实例化;同时集中化了生产线的管理,节省了资源的浪费。原创 2015-05-27 23:40:15 · 589 阅读 · 0 评论 -
c++设计模式之外观模式
http://m.blog.csdn.net/blog/ApeLife/38962313转载 2015-05-31 21:18:09 · 460 阅读 · 0 评论 -
找出1001个数(区间1~1000)中重复出现的数(有两个相同)
#include#include#includeusing namespace std;/*假设你有一个用1001个整数组成的数组,这些整数是任意排列的,但是你知道所有的整数都在1到1000(包括1000)之间。此外,除一个数字出现 两次外,其他所有数字只出现一次。假设你只能对这个数组做一次处理,用一种算法找出重复的那个数字。如果你在运算中使用了辅助的存储方式,原创 2015-05-31 17:32:28 · 4434 阅读 · 0 评论 -
c++设计模式之策略模式
1.什么是策略模式策略模式属于对象行为模式,其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使它们可以相互替换。2.策略模式的结构策略模式是对算法的包装,把使用算法的责任和算法本身分开,委派给不同的对象管理。环境(Context)角色:持有一个Strategy引用;抽象角色(Strategy)对象:抽象角色,由一个抽原创 2015-05-31 22:05:58 · 479 阅读 · 0 评论 -
c++设计模式之外观模式
外观模式外观模式(Facade),为子系统中的一组接口提供一个一致的界面,定义一个高层接口,这个接口使得这一子系统更加容易使用。同时,客户端不需要与子系统直接交流,这样做遵守了迪米特原则————一个对象应该对其他对象有最少的了解。通俗地讲,一个类应该对自己需要耦合或调用的类知道得最少,你(被耦合或调用的类)的内部是如何复杂都和我没关系,那是你的事情,我就知道你提供的public方法,我就调原创 2015-05-31 21:22:48 · 458 阅读 · 0 评论 -
设计包含min函数的栈。
/*设计包含min函数的栈。定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。要求函数min、push以及pop的时间复杂度都是O(1)。*/ #includeusing namespace std;class Stack{private:int *stack;int top = -1;int topmin = -1;int s原创 2015-05-31 17:12:18 · 429 阅读 · 0 评论 -
判断整数序列是不是二元查找树的后序遍历结果
#includeusing namespace std;/*判断整数序列是不是二元查找树的后序遍历结果题目:输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果。如果是返回true,否则返回false。例如输入5、7、6、9、11、10、8,由于这一整数序列是如下树的后序遍历结果:8/ \6 10/ \ / \5 7 9 11因原创 2015-05-31 17:06:11 · 367 阅读 · 0 评论 -
c++设计模式之装饰模式
装饰模式能够实现动态的为对象添加功能,是从一个对象外部来给对象添加功能。通常给对象添加功能,要么直接修改对象添加相应的功能,要么派生对应的子类来扩展,抑或是使用对象组合的方式。显然,直接修改对应的类这种方式并不可取。在面向对象的设计中,而我们也应该尽量使用对象组合,而不是对象继承来扩展和复用功能。装饰器模式就是基于对象组合的方式,可以很灵活的给对象添加所需要的功能。装饰器模式的本质就是动态组合。动原创 2015-05-22 00:37:33 · 519 阅读 · 0 评论 -
c++设计模式的学习链接
http://www.cnblogs.com/wanggary/category/294620.html转载 2015-05-22 00:12:59 · 434 阅读 · 0 评论 -
c++设计模式之桥接模式
c++设计模式之桥接模式作用:将抽象部份与它的实现部份分离,使它们都可以独立地变化。将抽象(Abstraction)与实现(Implementation)分离,使得二者可以独立地变化。 桥接模式就将实现与抽象分离开来,使得RefinedAbstraction依赖于抽象的实现,这样实现了依赖倒转原则,而不管左边的抽象如何变化,原创 2015-05-28 15:24:54 · 563 阅读 · 0 评论 -
翻转句子中单词的顺序。
#include#includeusing namespace std;/*翻转句子中单词的顺序。题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。例如输入“I am a student.”,则输出“student. a am I”。此题难度不大,主要是如何把原创 2015-05-31 16:59:16 · 449 阅读 · 0 评论