百度2014校招 深圳软件研发岗

来源:互联网 发布:www.js lottery.com 编辑:程序博客网 时间:2024/04/29 16:48

一、简答题

1. 动态链接库和静态链接库分别有什么优缺点?


2. 轮询任务调度与抢占式任务调度的区别?


3. 请列出数据库中常用的锁,分别给出其应用场景?


二、算法与程序设计题

1. 给定任意一个正整数,求比这个数大且最小的“不重复数”,不重复的含义是相邻两位不相同,例如1101是重复数,1031是不重复数?


2. 长度为极大的字符串,求这个字符串的最长回文子串。


3.数周上从左到右有n个点a[0], a[1], .....,a[n-1], 给定一根长度为L的绳子,求绳子最多能覆盖其中的几个点?


三、系统设计

1. 在现代系统的设计过程中,为了减轻请求的压力,通常采用缓存技术,为了进一步提升缓存的命中率,同常采用分布是缓存方案。调度模块针对不同内容的用户请求分配给不同的缓存服务器向用户提供服务。请给出一个分布式缓存方案,满足如下要求:

1) 单台缓存服务器故障,整个分布式缓存集群,可以继续提供服务。

2)通过一定得分配策略,可以保证充分利用每个缓存服务的存储空间,及负载均衡。当部分服务器故障或系统扩容时,改分配策略可以保证较小的缓存文件重分配开销。

3)当不同缓存服务器的存储空间存在差异时,分配策略可以满足比例分配。