tencent腾讯——一直的梦想

腾讯的流程是一笔和四面。前三次面试都是技术面,hr面基本不刷人。笔试成绩决定面试顺序。技术面可能要写代码,做智力题目。

主要是c/c++、数据结构、操作系统等方面的基础知识。好像有sizeof、树等选择题。填空题是补充完整程序。附加题有写算法的、编程的、数据库sql语句查询的。还有一张开放性问题。
 
 1.请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句。
int   const   shift   =   sizeof(int)*8-1;  
 unsigned   mask   =   (0x1<<shift);  
 if   (   (a-b)&mask   )  
          max_num   =   b;  
 else    
        max_num   =   a;
  #define Max(a,b) ( a/b)?a:b
 2.如何输出源文件的标题和目前执行行的行数
    int line= __LINE__;
    char *file = __FILE__;
    cout<<"file name is "<<(file)<<",line is "<<line<<endl;
 3.两个数相乘,小数点后位数没有限制,请写一个高精度算法
与大数相乘原理一样,只是调整小数点位置,即有效小数个数
算法提示:
 
         输入 string a, string b;计算string c=a*b; 返回 c;
 
1,   纪录小数点在a,b中的位置l1,l2,则需要小数点后移动位置数为l=length(a)+length(b)-l1-l2-2;
 
2,   去掉a,b中的小数点,(a,b小数点后移,使a,b变为整数)
 
3,   计算c=a*b; (要么用java的BigInterger搞, 要么自己用C++写高精度数乘法,超过百万位,用FFT,我就不细说,这都预先写过就别做了)
 
4,   输出c,(注意在输出倒数第l个数时,输出一个小数点。若是输出的数少于l个,就补0)
 
 4.写一个病毒
  while (1)
 
      {
          int *p = new int[10000000];
      }

上面这个不对,没有传染性,寄生性……
 
 5.不使用额外空间,将 A,B两链表的元素交叉归并将树序列化 转存在数组或 链表中
 
  struct st{
  int i;
  short s;
  char c;
  };
sizeof(struct st);
 
8
   char * p1;
   void * p2;
   int p3;
   char p4[10];
   sizeof(p1...p4) =?
 
4,4,4,10

 
5.让你在100000000个浮点数中找出最大的10000个,要求时间复杂度优。
 最小堆
 
二分查找
 
快速排序
 
双向链表的删除结点
 
有A、B、C、D四个人,要在夜里过一座桥。他们通过这座桥分别需要耗时1、2、5、10分钟
,只有一支手电,并且同时最多只能两个人一起过桥。请问,如何安排,能够在17分钟内
这四个人都过桥?
  

基础题有15道选择和2道读程序填空。选择题的确是很基础,主要考数据结构,还有一些体系结构、数据库的题目;读程序题跟我们平时考试的差不多,一道是两个升序链合并成一个升序链+递归,一道是四色着色方案
 
附加题有几道没有看清楚。有一道是unix防僵死算法,最后一道是sql查询,还有几道忘了,其中一个是很长的程序题。。
 
发信人: charly (查理一世), 板面: Work
标 题: 腾讯笔试题
发信站: 飘渺水云间 (Sat Nov 11 10:55:33 2006), 转信
 
15个选择题,60分
一个程序填空,40分
三道附加题60分
 
附加题考的是
不用第三个变量实现两个整形变量的交换
linux的子进程
操作系统资源抢占管理,两个进程要对文件
进行独占访问,采用共享变量,判断可行否
 
 
书写strcpy()
 
发信人: nostalgiatom (占戈占戈克克克克), 信区: Job
标 题: 简单说一下腾讯的笔试吧(地点哈尔滨时期11.2 早上)
发信站: 天大求实BBS (Thu Nov  2 13:14:03 2006), 本站(bbs.tju.edu.cn)

时间两个小时,选择题 15*4
然后是程序填空题 10 (2*5), 30 (10*3)
附加题用c++ 实现一个链地址hash。
程序填空题我就不说了,比较easy的说,值得一提的是选择题。
绝大部分考的是C++,我大致说下主要部分吧:
涉及程序执行压栈的:1道
涉及容器和迭代器的:4道
涉及虚拟函数以及dynamic_cast的 3道
涉及参数传递的 1道
简单的程序段落判断 2道
涉及类的静态成员赋值的 1道
剩下的是杂七杂八的。
不管怎么说,假如你把c++ primer 仔细阅读了一遍,基本上没问题。
考的有些细,没有涉及算法和编译等知识,所以我同屋一个兄弟很郁
闷,因为他linux底层比较好,本来报的是后台开发,哪知道结果考这
种类型的题目。
程序填空的考了文件操作,以及数组移动等。
附加题比较简单的说,只要把数据结构的hash部分好好看,然后用class
组装一下就ok了。

最后祝大家好运,今年腾讯计划50%的是校园招聘,感觉很不多。

 

 

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值