2017笔试题有哪些内容呢?下面就由小编为大家介绍一下百度2017校园招聘笔试题的文章,欢迎阅读。
百度2017校园招聘笔试题篇1
请列举下不同进程之间共享数据的方式(至少举出三种)。(10分)
1、文件映射(memory-mapped files)能使进程把文件内容当作进程地址间一块内存那样来对待
2、共享内存(shared memory)实际就是文件映射的一种特殊情况
3、命名管道(named pipe)是服务器进程和一个或多个客户进程之间通信的单向或双向管道
4、邮件槽(mailslots)提供进程间单向通信能力,任何进程都能建立邮件槽成为邮件槽服务器
5、剪贴板(clipped board)为不同应用程序之间共享不同格式数据提供了一条捷径
6、动态连接库(dll)中的全局数据可以被调用dll的所有进程共享
百度2017校园招聘笔试题篇2
请描述下tcp和udp的差别,并且各列举出一个上层协议。(10分)
tcp—传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个tcp连接,之后才能传输数据。tcp提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。
udp—用户数据报协议,是一个简单的面向数据报的运输层协议。udp不提供可靠性,它只是把应用程序传给ip层的数据报发送出去,但是并不能保证它们能到达目的地。由于udp在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。
经常使用“ping”命令的原理就是向对方主机发送udp数据包,ftp等就是使用到的tcp协议
百度2017校园招聘笔试题篇3
算法与程序设计
1、给出一个数据a={a_0,a_1,a_2…a_n}(其中n可变),打印出该数值元素的所有组合。(15分)
因为题目要求n可变,所以不可能是n层for循环的方式,可以采用递归的方式来实现,每次取一个元素,在剩下元素的数组中递归,要注意递归结束的条件。
2、有这样一个数组a,大小为n,相邻元素差的绝对值都是1,如a={4,5,6,5,6,7,8,9,10,9},现在给定数组a和目标整数t,请找到t在a中的位置。(15分)
最简单的方式是循环遍历每一个元素之后比较,找到t在a中的位置,此种方法效率最低;
改进:因为相邻元素差的绝对值都是1,那么任意两个元素相距的位置至少是两元素差的绝对值个,假设要找的元素是t,t和a(0)的差为y1=abs(t-a[0]),那么t和a[0]的距离至少是y1,再求一次差值y2=abs(t-a[y1]),t和a[y1 y2]的距离至少是y2,继续向后查找,直到相等为止,此种方法效率较前一种高
3、有一颗二叉树,定义树的高度为从根到叶子节点的最长距离,树的宽度为每层节点的最大值,树的面积定义为高度和宽度的乘积。写一个函数计算一个二叉树的面积。(15分)
广度遍历求树的宽度,深度遍历求树的高度,之后计算面积