第一题:简答题
1.extern "C"{}的含义是什么,能解决什么问题?
2.写出至少两种经典的设计模式,阐明其使用场景,有伪代码更好。
3.TCP连接中time_wait状态是什么意思?说明其使用的场景,并指出它的好处和坏处分别是什么?
第二题:算法分析和设计题
1.有个任务定时器,每天要定时执行N个任务(N < 1000),其中有些任务的执行依赖于其他任务的执行,如A任务执行之后B任务才能执行,但这些任务之间不存在循环依赖。请用算法来说明任务的执行顺序,有伪代码更好。
2.编程求某一个英文文本中完整句子的数目,文本中只包含大小写字母、空格、“,”和“.”,完整的句子是指以“.”结束,且“.”号前必须出现至少一个字母。
第三题:系统设计题
设计一个系统,该系统记录用户的访问记录。每条记录包含访问的url、访问ip以及访问时间,系统每天至少要记录1000亿条记录,系统要对这些数据进行存储和维护,并提供实时的查询,至少满足下面两个查询:
1.给定任意一个时间段(精确到分)和URL,计算该时间段内访问这个url的访问量;
2.给定任意一个时间段(精确到分)和IP,计算该时间段内访问这个IP的访问量。