一 简答题(10分*3)
1 静态链接库与动态链接库的优缺点。
2 轮询任务调度与抢占式任务调度的区别。
3 请列出数据库中常用的锁及应用场景。
二 算法与程序设计(15分*3)
1 给定一个正整数n,求比n大的第一个“不重复数”。”不重复数“的定义:如果一个数,任何相邻两个数位上的数字都不相同,则称为不重复数。例如1234是不重复数,而1101不是。
2 求长度极大字符串的最长回文子串。
3 数轴上有一系列点a[0],a[1],a[2]......a[n-1],给定一根长度为L的绳子,求绳子最多能覆盖的点的个数。
三 系统设计题(25分)
1. 在现代系统的设计过程中,为了减轻请求的压力,通常采用缓存技术,为了进一步提升缓存的命中率,同常采用分布是缓存方案。调度模块针对不同内容的用户请求分配给不同的缓存服务器向用户提供服务。请给出一个分布式缓存方案,满足如下要求:
1) 单台缓存服务器故障,整个分布式缓存集群,可以继续提供服务。
2)通过一定得分配策略,可以保证充分利用每个缓存服务的存储空间,及负载均衡。当部分服务器故障或系统扩容时,改分配策略可以保证较小的缓存文件重分配开销。
3)当不同缓存服务器的存储空间存在差异时,分配策略可以满足比例分配。
本文精选了技术面试中常见的简答题、算法题及系统设计题,涵盖了静态链接库与动态链接库的区别、任务调度方式、数据库锁机制等内容,并探讨了求解特定数学问题的算法,同时提出了一种分布式缓存设计方案。
1441

被折叠的 条评论
为什么被折叠?



