爱奇艺校招

奇异数 定义一个奇异数: 1. 该数至少是两位的 2. 该数的末尾两位是相同的 问从L到R之间有多少个奇异数,包括L和R。 这个题目楼主开始用暴力求解只过了百分之六十,后来想出来低复杂度的时间快到了。这个题目其实和从1到n中1出现的次数很相似,只是这道题目问从1到n中末尾00,11,22...

2017-09-10 22:10:37

阅读数 606

评论数 0

重排整数

时间限制:1秒 空间限制:100768K 小易有一个长度为N的正整数数列A = {A[1], A[2], A[3]..., A[N]}。 牛博士给小易出了一个难题: 对数列A进行重新排列,使数列A满足所有的A[i] * A[i + 1](1 ≤ i ≤ N - 1)都是4的倍数。 小易现...

2017-09-09 22:25:54

阅读数 709

评论数 0

已知先序遍历和中序遍历

首先前序遍历的第一个节点就是根节点,然后根据根节点把中序遍历分成两部分,左边部分是左子树的中序遍历,右边是右子树的中序遍历,然后根据左子树的中序遍历在谦虚遍历序列中找到左子树的前序遍历,右子树的前序遍历,然后重复上述过程,建立二叉树。 #include #include #inclu...

2017-09-07 11:05:44

阅读数 164

评论数 0

只用2GB内在20亿个整数里中找到出现次数最多的数

题目 有一个包含20亿个全是32位整数的大文件,在其中找到出现次数最多的数,内存限制为2GB。 解答: 想要在很多整数中找到初夏次数最多的数,通常的做法是用哈希表对出现的每一个数据做词频统计,哈希表的key是某一个整数,value是这个词出现的次数。就本题来说,一共20亿个整数,用32位in...

2017-09-05 10:13:37

阅读数 2463

评论数 0

组合模式

我们先看一个典型的UNIX文件系统,大家都知道UNIX文件系统采用的是多级索引结构,本图只给出了两级构架,其中直接物理块里存放的是文件的直接地址,而次级索引表指向一个和顶级索引表类的东西,这样就成了一个树形的构架,组合成了一个文件系统。 组合模式,将对象组合成树形结构以表示‘部分-整...

2017-09-03 15:56:12

阅读数 108

评论数 0

装饰模式

首先来看一个场景,你今天和一个爱登山的MM约会了,你需穿一套登山装,明天你和一个爱运动的妹妹约会,你需要穿一套运动服,后天你和一个比较喜欢绅士的妹纸约会,你就需要西装革履,但是无论你穿什么,你还是你,唯一的你只是传了不同的衣服而已,仅仅是在装饰自己。 装饰模式(Decorator),动态地给一个对...

2017-09-03 11:24:08

阅读数 127

评论数 0

中介者模式

中介者嘛,大家都应该知道是什么意思。比如联合国,其实就是一个中介机构,为多个国家提供一个交流平台,比如美帝说“伊拉克你要在搞核武器,我就揍你”,但是和伊拉克言语不通,需要联合国来传达,同样伊拉克发布的信息需要联合国传达给美国。这种模式就是中介者模式。 中介者模式(Mediator),用一个中介对...

2017-09-02 21:17:51

阅读数 93

评论数 0

职责链模式

大家可能去政府办过事,遇到一个效率不高的政府时,你可能就要头大了,A部门说你去B部门,B部门说你去C部门,C部门说你去B部门,然后你就头大了,不知道去哪里办理。再看另外一种情况,当地开发商可能要买一万亩的地,先去县里审批,县里一看太大了,审批权限不够,告诉你去市里审批,市里一看权限不够,告诉你去省...

2017-09-02 17:07:24

阅读数 105

评论数 0

原型模式

校招季又到了,大家都会去纷纷去投简历,投简历的时候你有没有一份一份的写呢,估计你是不会这么干的,你会拿一份模板填上自己的信息,发给A公司,然后B公司来了,你咋办呢,再把那个模板填一遍?你是不是傻,其实发给A公司和B公司的简历都差不多,那就好办了,把A简历copy一份,然后改改不就好了,但是这两份简...

2017-09-02 15:01:40

阅读数 97

评论数 0

享元模式

首先来看一个情景,我们在写文档的时候,有很多的字,但是这些字难道真的一个一个独立的对像吗?如果真的是一个一个独立真实的对象,那么内存就会爆掉的。大家可能听说过字库,我们看到的字都是字库里面的,每个显示的字都是字库里面的,每个字在字库里只会有一个对象,那么就意味着文档里的相同的字都会指向同一个对象,...

2017-09-02 11:10:37

阅读数 84

评论数 0

外观模式

炒过股票的可能知道中美股市的不同,中国股市散户为主,美国股市以大型基金机构为主。个人炒股由于专业知识不够,而且还要不断的关注每个股票,不过最终亏本的还是很多的,但是在美国,散户可以把钱给基金,大型基金有专业的知识,管理的股票比较多,最终多数能做到盈利,散户也可以获得相应的收益。从这个例子可以看到,...

2017-09-01 21:13:50

阅读数 87

评论数 0

适配器模式

大家知道,输电线用的是高压电,家庭照明使用的220V低压电,那怎么办呢,大家都知道了,使用变压器,其实也可叫适配器。 适配器模式,将一个类的接口转换成客户希望的另外一个接口。Adapter 模式使得原本由于不兼容而不能一起工作的那些类可以一起工作。 适配器模式主要解决的问题:东西在你面前,却不同使...

2017-09-01 20:10:22

阅读数 204

评论数 0

模板

其实这个模式,在C++的学习里已经接触过了,比如两个STL里面的栈,里面对栈的一些操作,无论栈里面存放的是整数,还是字符,其实操作都是一样的,因此可以使用一个模板来实现,避免了重复的代码。 我们开始写冒泡机排序的模板,首先无论是给整数,还是浮点数,还是字符,冒泡排序的机制都是一样的,把这个数...

2017-09-01 16:42:28

阅读数 125

评论数 0

命令模式

想象一个场景,你是一个烧烤店的老板,卖烤鸡翅考羊肉,来了一群客人来点菜,模式一,直接给烧烤师傅发命令让他考鸡翅和烤羊肉,这样做简单粗暴,但是问题来了一旦人一多,师傅就很容易出错。实际上,一个店里都有一个服务员,客人都是直接问服务员,然后服务员给师傅发命令,这样做,提高了效率,师傅只负责烧烤,不负责...

2017-09-01 14:50:00

阅读数 89

评论数 0

建造者模式

相信大家都吃过中餐和KFC,这两种东西有什么区别呢?你吃一万个师傅炒出来的酸辣土豆丝可能有一万种味道,但是你吃一万家KFC大概会有一种味道。为什么呢,因为一万个师傅某个师傅可能忘记放盐了,另一个忘记放醋了,但是KFC是一套标准化流程,所以出来就是一个味道。那么怎么才能将中餐变成一个味道呢?那就是标...

2017-09-01 10:10:12

阅读数 87

评论数 0

代理模式

媒婆这个职业大多人可能都知道,媒婆是干什么的呢?当你找MM时,你需要向多个MM发送同样的问题,你多高,你喜欢什么,但是你可能很忙没有时间怎么办呢?那就找个媒婆替你自己去问。 #include #include using namespace std; class Girl//追求的对象 ...

2017-08-30 14:51:11

阅读数 99

评论数 0

工厂模式

接着上文简单工厂模式的问题,简单工厂模式的最大优点是工厂类中包含了必要的逻辑判断,根据客户端的选择条件动态实例化相关的类,对于客户端来说,去除了与具体产品的依赖。比如你想产生加操作,直接把加号给工厂,工厂就产生了加类的产品。但是如果要添加新功能,比如求M数的N次方,就需要增加case分支,因此就违...

2017-08-30 11:21:35

阅读数 103

评论数 0

简单工厂模式

问题:现在实现一个计算器功能,输入两个数和操作符,求两个数操作之后的结果。 于是可以有这样一份代码: switch (ch) { case '+': ... } 改进:使用面向对象的思想,让操作和实现分离,从而使得程序更加灵活,容易修改,并且易于复用。 设计出这样的一个类: class...

2017-08-30 10:47:12

阅读数 109

评论数 0

抽象工厂模式

问题来源:假设有这样一款游戏,游戏有等级,分别为初级,中级,高级甚至有BT级。假设也是过关的游戏,每个关卡都有一些怪物(monster)守着,玩家要把这些怪物干掉才可以过关。作为开发者,我们就不得不创建怪物的类,然后初级怪物、中级怪物等都继承自怪物类(当然不同种类的则需要另创建类,但是模式相同)。...

2017-08-29 21:27:33

阅读数 144

评论数 0

策略模式

策略模式:它定义了算法家族,分别封装起来,让它们之间可以互相替换,但是不会影响到使用算法的客户。策略模式是一种定义一系列算法的方法,从概念上来看,所有这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的算法,减少了各种算法类与使用算法类之间的耦合,策略模式依赖于多态。 设计步...

2017-08-29 20:03:50

阅读数 110

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭