腾讯笔试题目

转载 2006年05月29日 09:11:00
腾讯笔试题目(转)

一些腾讯笔试题目

1、请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句
2、如何输出源文件的标题和目前执行行的行数
3、两个数相乘,小数点后位数没有限制,请写一个高精度算法
4、写一个病毒
5、有A、B、C、D四个人,要在夜里过一座桥。他们通过这座桥分别需要耗时1、2、5、10分钟,只有一支手电,并且同时最多只能两个人一起过桥。请问,如何安排,能够在17分钟内这四个人都过桥?

2005年腾讯招聘
选择题(60) 
  c/c++ os linux 方面的基础知识 c的Sizeof函数有好几个! 
程序填空(40) 
1.(20) 4空x5 
  不使用额外空间,将 A,B两链表的元素交叉归并 
2.(20) 4空x5 
MFC  将树序列化 转存在数组或 链表中!

 

1.请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句

// 这样转向定义应该不算违规吧!^_^

 

#include "stdafx.h"

#include <string.h>

#include <iostream>

using namespace std;

 

#define Cmp(x,y) compare(x,y)

 

int compare(int a,int b)

{

     a^=(1<<31); b^=(1<<31);

     int i=31;

    while((i^-1) && !((a&(1<<i))^(b&(1<<i))))     i--;

     return (i^-1)?(((a>>i)&1)?1:-1):0;

}

 

int _tmain()

{

     int c;

     c = Cmp(5,4);

     cout<<c<<endl;

     return 0;

}

 

2.如何输出源文件的标题和目前执行行的行数(不晓得怎么搞,在等兄弟给我答案在!)

 

3.两个数相乘,小数点后位数没有限制,请写一个高精度算法

  算法提示:

     //想法来自北师大一个同学给我看的另一个题目以及他的java程序。

     输入 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.写一个病毒(没搞过,^_^)

 

5.让你在100000000个浮点数中找出最大的10000个,要求时间复杂度优。

//本算法使用快排,O(n*lg(n)) 

//最低可以找到线性算法,使用预先区域统计划分!类试于构造Quad Trees! 写起来代码会长些!

 

#include <stdio.h>

#include <stdlib.h>

 

#define Max 100000000

int a[Max+10];

 

int cmp(const void *a, const void *b)

{

     int *x = (int *) a;

     int *y = (int *) b;

     return *x-*y;

}

 

int main()

{

     int n=0;

     while(scanf("%d",&a[n])==1)     n++;

     qsort(a,n,4,cmp);

     for(int i=0;i<3;i++)     printf("%d",a[i]);

     return 1;

}

 

5、有ABCD四个人,要在夜里过一座桥。他们通过这座桥分别需要耗时12510分钟,只有一支手电,并且同时最多只能两个人一起过桥。请问,如何安排,能够在17分钟内这四个人都过桥?

Solution:

The First Time      A(1)B(2)过桥,A(1)返回 Cost1+2
The Second Time
   C(5)D(10)过桥,B(2)返回 Cost10+2
The Third Time     A(1)
B(2)过桥 Cost2

Total Time Cost
   (1+2)+(10+2)+2=17 minutes

笔试



C、C++、数据结构和算法、少量网络题,操作系统和数据库,Linux编程、MFC等知识

一般的要求是:  
  unix类:  
  slackware   linux,redhat   linux,   solaris   for   X86   系统  
  shell编程  
  mysql操作和C   API的使用  
  gcc和g++开发都需要掌握  
  TCP/IP开发server程序  
  对html、cgi熟悉更好  
   
  windows类:(主要是网络游戏)  
  VC   MFC  
  DirectX  
  图形算法等 

 

windows   开发vc类  
  linux/unix   cgi类 

    应对建议:

    (1) C   

    (2) 操作系统、数据库、网络    

    (3) 高程题

相关文章推荐

腾讯2014软件开发笔试题目

腾讯2014软件开发笔试题目                                     ...
  • zqtsx
  • zqtsx
  • 2013-10-09 15:48
  • 1136

一些笔试题目和整理的答案 - 腾讯(Tencent)

一些笔试题目和整理的答案 - 腾讯(Tencent)        NO1  Below is usual way we find one element in an array  cons...

腾讯笔试题目

  • 2013-09-15 20:20
  • 53KB
  • 下载

腾讯招聘笔试题目

  • 2013-04-25 08:11
  • 23KB
  • 下载

腾讯笔试题目

原文: http://www.51jobdoc.com/typedesign/InfoDetails.aspx?id=531&tid=4  前面几道题,以及有解释的题目不错。   1. 1-...

腾讯笔试题目

  • 2013-10-27 22:25
  • 192KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)