状态模式(State Pattern)是设计模式的一种,属于行为模式。定义(源于Design Pattern):当一个对象的内在状态改变时同意改变其行为,这个对象看起来像是改变了其类。状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况。把状态的推断逻辑转移到表示不同状态的一系列类中,...
分类:
编程语言 时间:
2015-09-09 21:20:08
阅读次数:
269
观察者模式:定议定义对象间的一种一对多的关系,当一个对象状态改变时 (一般称为被观察者),依赖于该对象的对象被通知,并更新;观察者模式:说明1. 观察者模式是行为模式,也被称为:发布-订阅模式、模型-视图模式、源-监听器模式、从属者模;2. 面对象过程中观察者模式的组成: 1>. 抽象主题角色:这....
分类:
编程语言 时间:
2015-09-06 20:00:26
阅读次数:
202
如何有效激励,这是管理者和hr必须一直思考的问题。《驱动力》给了我们从另一个角度思考这个问题的方法,也让我们对如何焕发人们的积极,自主和热情有了更深一步的认识和思考。 过去我们大部分人都遵循着胡萝卜大棒的行为模式:老板给我们加薪,我们的工作就格外卖力;我们工作就没有动力;迟到早退要扣薪水,...
分类:
其他好文 时间:
2015-09-04 12:19:03
阅读次数:
401
Delphi中的窗体分为模式窗体和无模式窗体。二者的区别在于,用户可以在无模式窗体和其他窗体之间切换。这样,用户就可以同时工作于一个应用程序的几个部分。Delphi中窗体的初始化有两种情况,动态创建,和自动创建。通过show显示一个无模式窗体,ShowModal显示一个模式窗体。窗体有创建对应的也要...
该算法由D.E.Knuth ,J.H.Morris和 V.R.Pratt提出,用于解决字符串匹配问题。思想:设目标串(主串)为s,模式串为t ,并设i指针和j指针分别指示目标串和模式串中正待比较的字符,设i和j的初值均为0。若有s[i]=t[j],则i和j分别加1。否则,i不变,j退回到j=next[j-1]的位置,再比较s[i]和t[j],若相等,则i和j分别加1。否则,i不变,j再次退回到j=n...
分类:
编程语言 时间:
2015-08-27 23:14:15
阅读次数:
211
迭代子(Iterator)模式又叫游标模式,是对象的行为模式。迭代子模式可以顺序地访问一个聚集中的元素而不必暴露聚集的内部表象。迭代子模式涉及到以下几个角色:抽象迭代子(Iterator)角色:此抽象角色定义出遍历元素所需的接口。具体迭代子(ConcreteIterator)角色:此角色实现了Ite...
分类:
其他好文 时间:
2015-08-27 22:43:25
阅读次数:
131
设目标字符串S,起配位置为j;模式字符串T,起配位置为i。暴力匹配:每次失配后,从j+1位置重新开始和T匹配。伪代码:def index_BF(T, S, pos): while pos+len(T)using namespace std;void getNext(const char* T,...
分类:
编程语言 时间:
2015-08-27 14:53:21
阅读次数:
153
观察者模式是对象的行为模式,又叫做发布-订阅模式、源-监听器模式或者从属者模式。观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听同一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使它们能够自动更新自己。下面给出一个简单的示意性系统,在该系统中有如下几个角色:抽象主题...
分类:
其他好文 时间:
2015-08-26 22:10:57
阅读次数:
170
模板方法模式是类的行为模式。准备一个抽象类,将部分逻辑以具体方法以及具体构造子的行为实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。这就是模板方法。下面考虑一个计算存款利息的例子。假设系统需要支持两种存款账号,即货币市场(...
分类:
其他好文 时间:
2015-08-26 19:38:06
阅读次数:
204
题目大意:有两台机器A和B以及K个需要运行的任务。A机器有N种不同的模式,B机器有M种不同的模式,而每个任务都恰好在一台机器上运行。如果它在机器A上运行,则机器A需要设置为模式xi,如果它在机器B上运行,则机器A需要设置为模式yi。每台机器上的任务可以按照任意顺序执行,但是每台机器每转换一次模式需要...
分类:
移动开发 时间:
2015-08-25 13:11:48
阅读次数:
160