百度2013校园招聘系统工程师笔试题目

时间:2017-12-28 笔试题目 我要投稿
  一、简答题(40分)
  1.请问printf("%d\n", sizeof('A'));语句执行后打印的结果是多少?为什么?(5分)
  2.如下一段代码(8分)
  unsigned long n=0;
  unsigned char ch=0xff;
  n|=(ch&0xff)<<24;
  printf("0x%|x\n",n);
  请问在32位平台和64位平台上,上述代码打印出的值分别是多少?
  如果要让64位平台下代码输出和32位平台下一致,应该如何修改代码?
  3.请列举linux内涵中常见的内存分配方式,他们的特点、应用场景及使用时需要的注意事项。(8分)
  4.Boot Loader是在操作系统内核运行之前运行的第一段小程序。请简述其主要任务。(5分)
  5.谈谈你对cache伪共享的理解(5分)
  6.请回答以下问题(9分)
  a) TCP/IP网络五层模型有哪五层?
  b) 在网络分层模型中,能否取消ip协议而使用以太网协议代替?为什么?
  c) Tcp协议中的拥塞窗口。接收窗口和发送窗口的大小各由什么决定的?
  二、编程题(20分)
  1.给定链表的头指针和一个节点指针,请在O(1)时间删除该节点指针。(10分)
  2.找出一个字符串中连续出现次数最多的字串。(10分)
  三、算法题(40分)
  1、在网络中,ip报文路由使用的是最长前缀匹配算法,例如一台路由器上有以下两条路由:
目的网段 下一跳
111.222.333.0/24 1.1.1.1
111.222.333.128/26 2.2.2.2
  那么对于目的IP为111.222.333.(0-127,192-255)的报文,将选择1.1.1.1这条路由,而目的IP为111.222.333.(128-191)的报文将选择2.2.2.2这条路由。当路由条目很多时(比如数万条),逐条匹配将消耗大量时间。
  请设计一种高效的路由查找算法,描述插入、删除、查找的过程,并适当兼顾内存占用(假设可用内存为100MB,需要能够容纳10000条随机路由)。(20分)
百度2013校园招聘系统工程师笔试题目相关推荐
热门推荐