更新时间:2018-11-22 15:46作者:才子老师
1、extern “C”{}是什么含义?用来解决什么问题。(10分)
2、至少说出两种经典设计模式,并举例说明使用场景,有伪代码更加.(10分)
3、TCP连接的time_wait是什么状态,描述其发生的场景,说明它存在的好处坏处。(10分)
二、算法与程序设计(40分)
1.有一个任务执行器,每天需要定时执行很多任务(任务数N<1000),任务执行器每次只能执行一个任务而任务之间存在依赖关系,如A任务需要依赖于B任务完成后才能进行,虽然各个任务之间依赖关系复杂但是各个任务之间却没有循环依赖的问题。给出一个合适的任务执行顺序。请详细描述你的算法思路(如需要,可给出伪代码来辅助描述),并分析其时间和空间复杂度。(20分)
2.编写函数:
统计在某段英文文本完整句子的数目,文本只包括大小写英文字母、空格、点(.)、逗号(,)。
完整句子必须包含至少一个字母并以点结束。要求:请给出完整代码,在达到目标的情况下尽量高效,简介。(20分)
三、系统设计题(30分)
某流量监控系统每天生成大量的数据记录,每条记录 包括url,访问IP,时间,这些数据记录需要进行存储和维护,并提供查询。请设计一个系统能够存储和维护1000亿条数据,实现实时监控,并能支持一下两种查询:
1.指定任意一个时间段(精确到分钟)和某个ip,查出该时段内该ip的总访问量。
2.指定任意一个时间段(精确到分钟)和某个url,查出该时段内对该url的总访问量。下面是当时笔试的一些思路,具体细节不太记得了。
1.很多地方都见到这道题,extern “c”是指将该段代码以C语言形式进行编译、链接。由于C不支持函数重载,C与C++对于同一函数进行编译后在符号表中保存的函数名存在差异,故当进行C、C++混编时会出现一些问题。
2.记得上学期还特意去借了一本《设计模式》书来看,翻是翻了几下,结果啥也没记住,这题直接空了。对于设计模式记得最深的一句就是“过分在意设计模式会阻碍你的创新思维”。