百度 软件研发工程师笔试题 2013/10/13 广州考场

来源:互联网 发布:单片机usb 串口 编辑:程序博客网 时间:2024/06/10 01:22

一、简述题

1.请简述一下OSI七层模型。

2.进程间的通信有哪几种?(至少列出3种)

3.TCP和UDP的差别是什么?并分别举例一个对应的上层协议。


二、编程题

1、给出一个数组A[a0,a1,a2....an](n可以改变),请输出数组元素的所有可能的组合。

2、一个数组,相邻的元素相差不超过1,例如A[4,5,4,5,6,7,8,7,8,9,10,9],现给定一个t,求出t在A中的位置。

3、一个二叉树,其树高是叶子节点到根节点的最大的距离,其数宽是节点最多的那一层的节点数,其面积是树高与树宽的乘积,请编一个程序来求出一个二叉树的面积。


三、系统设计题

题目比较长,说下大概意思。

主要就是设计百度地图里那些地点的名称显示,如何让一个地图区域中显示更多的地点名字,地点名字可以抽象成一个小的矩形,这个矩形可以放在地点的左边或右边,但是这些地点名矩形不能有重叠,让你设计一下如何能够显示更多的地点名,写出具体的实现算法。


在有些地点,其建筑比较多,地点名很多,地图显示的区域比较大,这个时候就有瓶颈了,请写出具体的优化算法。





原创粉丝点击