系统设计和智力题
面试题积累---系统设计和智力题
~青萍之末~
弱者总有弱者的理由
展开
-
面试中常见的智力题
一、提灯过桥问题 题目:小明一家过一座桥,过桥时是黑夜,所以必须有灯。现在小明过桥要1秒,小明的弟弟要3秒,小明的爸爸要6秒,小明的妈妈要8秒,小明的爷爷要12秒。每次此桥最多可过两人,而过桥的速度依过桥最慢者而定,而且灯在点燃后30秒就会熄灭。问:小明一家如何过桥?小明和小明弟弟过桥,需要花费3秒(小明弟弟慢,花3秒),计T1 = 3秒,总用时TC=3秒;小明回来,需要花费1秒,记T2...原创 2019-05-26 20:42:36 · 13969 阅读 · 6 评论 -
如何编写高性能服务端程序
文章目录一、提高并发能力必须解决的问题1、如何提高并发连接数?2、那么多的连接数怎么进行业务处理?3、应用服务器的处理水平又该怎么提高?(1)代码中的业务逻辑(2)数据库的压力二、高性能服务端编程框架一、提高并发能力必须解决的问题1、如何提高并发连接数? 能不能接受高并发连接,主要是取决于accept的速度。一个TCP连接的建立,要在客户端和服务端之间,完成三次握手,然后连接会被放到完成队...转载 2019-04-23 21:04:05 · 463 阅读 · 0 评论 -
随机数、洗牌算法、蓄水池抽样等问题
文章目录一、线性同余法生成随机数二、洗牌算法三、蓄水池抽样1、如何随机从n个对象中选择一个对象?2、如何随机从n个对象中选择k个对象?一、线性同余法生成随机数 线性同余法是一种使用很广泛的伪随机数生成器算法:R(n+1)=(A * R(n) + C) mod M; // 一般选取互质的A、C、M,而且M一般比较大简而言之,线性同余法就是将当前的伪随机数值乘以A再加上C,然后将除以M得到...转载 2019-03-28 22:30:55 · 837 阅读 · 0 评论 -
海量数据处理
文章目录一、计算容量二、拆分三、解决思路之分而治之/Hash映射 + Hash统计 + 堆/快速/归并排序1、海量日志数据,提取出某日访问百度次数最多的那个IP2、有一个1G大小的一个文件,里面每一行是一个词,词的大小不超过16字节,内存限制大小是1M。返回频数最高的100个词。3、给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url?四...转载 2019-03-14 13:42:15 · 480 阅读 · 0 评论