腾讯校园招聘技术类研发笔试题和面试题答案
笔试城市:西安、成都、武汉等
笔试时间:2015-9-13
一、不定项选择题(共25题,每题4分,共100分,多选、少选、错选均不得分)
1、 如果MyClass为一个类,执行”MyClass a[5], *b[6]”语言会自动调用该类构造函数的次数是()
A. 2 B.5 C. 4 D.9
后面的指针没有类定义,就不会调用构造函数
2、下面程序的运行结果是()
#include
using namespace std;
class Base
{
int x;
public:
Base(int b):x(b) {}
virtual void display()
{
cout<
}
};
class Derived:public Base
{
int y;
public:
Derived(int d):Base(d),y(d) {}
void display()
{
cout<
}
};
int main()
{
Base b(2);
Derived d(3);
b.display();
d.display();
Base *p=&d;
p->display();
system("pause");
return 0;
}
A. 2 2 3 B.3 2 2 C. 2 3 3 D.2 3 2
依次调用 基类、派生类、派生类display()
3、在C++语言中,下面描述中,正确的是()
A. 一个基类的声明中有纯虚函数,该基类派生类一定不再是抽象类
B. 函数类型不能作为重载函数的调用的依据
C. 静态数据成员不是所有对象所公有的
D. 内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方
内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方
4、有如下程序:执行后的输出结果应该是()
#include
using namespace std;
class Base
{
public:
~Base()
{
cout<<"BASE";
} ;
};
class DERIVED:public BASE
{
public:
~DERIVED()
{
cout<<"DERIVED";
} ;
};
int main()
{
DERIVED x;
return 0;
}
A. BASE B. DERIVED C. BASE DERIVED D. DERIVED BASE
5、典型的路由选择方式有两种,静态路由和动态路由。以下描述正确的是()
A. 当动态路由与静态路由发证冲突时,以静态路由为准
B. 当动态路由与静态路由发证冲突时,以动态路由为准
C. 静态路由适用于网络规模大、网络拓扑复杂的网络
D. 动态路由适用于网络规模大、网络拓扑复杂的网络
6、下列哪些属于分布式文件系统?()
A. HBase
B. Spark
C. MapReduce
D.KFS
E. Hive
7、 下面程序的输出结果是()
#include
using namespace std;
int i=0;
int fun(int n)
{
static int a=2;
a++;
return a*n;
}
int main()
{
int k=5;
{
int i=2;
k+=fun(i);
}
k+=fun(i);
cout<
return 0;
}
A. 13 B. 14 C.15 D. 16
11
8、在Java中,一下那些数据结构可以以常量的时间复杂度0(1)添加元素()
A. HashMap B.ArrayList C. TreeMap D. LinkedList
9、若一棵二叉树的前序遍历为a, e, b, d, c,后序遍历为b, c, d, e, a,则根节点的孩子节点为()
A. 只有e B. 有e、b C. 有e、c D. 无法确定
10、一面墙,单独工作时,A花18小时砌好,B花24小时,C花30小时,现A, B, C的顺序轮流砌,每人工作1小时换班,完工时,B总共干了多少小时?()
A. 8小时 B. 7小时44分 C.7小时 D. 6小时48分
11、32位机器上定义如下结构体:
struct xx
{
long long _x1;
char _x2;
int _x3;
char _x4[2];
static int _x5;
};
int xx::_x5;
请问sizeof(xx)的大小是()
A.19 B.20 C.15 D. 24
内存对齐问题
点击打开链接
12、储蓄盒中2分和5分的硬币的个数相等,恰好分成钱数也相等的两堆,问:可能是多少元?()
A.2.1元 B.2.4元 C.2.8元 D. 3.0元
满足0.07的倍数
13、入栈序列是:a1,a3,a5,a2,a4,a6出栈序列是:a5,a4,a2,a6,a3,a1,则栈的容量最小是多少()
A. 2 B.3 C. 4 D. 5
14、TCP报文首部信息中与关闭连接有关的是()
A.URG B.ACK C. SYN D.FIN
15、
int foo(int n)
{
if (n<=1) return 1;
return n*foo(n-1);
}
上面算法时间复杂度是()
A. 0(log2n) B. 0(n) C.0(nlog2n) D. 0(n2)
16、turbo c环境下,下面程序运行的结果是()
#include
int main()
{
printf("\n");
int a[5]= {1,2,3,4,5};
int *p,*k;
p=a;
k=&p;
printf("%d",*(p++));
printf("%d",*k);
return 0;
}
A.11 B.21 C.22 D. 12
17、现有一个包含m个节点的三叉树,即每个节点都有三个指向孩子结点的指针,请问:在这3m个指针中有()个空指针。
A. 2m B. 2m-1 C. 2m+1 D.3m
18、在下面的描述中,哪些不属于数据库安全性的措施()
A. 普通ZIP压缩存
B. 关联加密存储
C. 数据分段
D. 授权限制
E. 数据多机备份
19、以下哪些工具可以显示源机器与目标机器之间的路由数量,以及各路由之间的RTT()
A. Traceroute B. Ping C. FTP D. Telnet
20、流量劫持是网络安全中常见的安全威胁,下列哪些情况可能会造成流量劫持?()
A. MAC地址欺骗
B. DNS劫持
C. 伪造的DHCP服务器
D. 使用https协议
21、以下哪些可以工作于数据链路层?()
A. tcpdump B. 集线器 C.交换机 D. 路由器
22、LDP报头中没有下面哪些信息?()
A.目的地址 B.窗口大小 C.序列号 D.检验和
23、以下方法那些可以让一个元素浮动起来()
A. inherit B.absolute C.fixed D. static
24、在竞选条件(race condition)的情况下,两线程执行如下代码段,其中count为共享变量,线程1执行代码段A,线程2执行代码段B,那么变量count的值可能为()
int count =10;
代码段A:
Thread_1()
{
//do something
count++;
}
代码段B:
Thread_2()
{
//do something
count--;
}
A.9 B.10 C.11 D. 12
25、假如john看到摆钟的时间是17:32分,请问下这时,时针跟分针的最小夹角是多少度?()
A.25度 B.26度 C.28度 D. 32度
二、附加题(共3题,每题20分,不计入总分)
1、请设计一个函数可以把10进制的正整数转换为4位定长的36进制字符串。
36进制的规则为:“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”;
举例说明:
1=“0001”
10=“000A”
20=“000K”
35=“000Z”
36=“0010”
100=“002S”
2000=“01JK”
2、在MMO游戏中,服务器采用Linux操作系统,网络通信与游戏逻辑
处理进程一般是分离的。
例如:GameSvr进程处理游戏逻辑,TCPSvr进程处理网络通信。Linux操作系统提供了很多机制可以实现GameSvr和TCPSvr进程之间的数据通信。请您列出两种你认为最好的机制来,并为主(最好)次(次佳)描述他们实现的框架,优缺点对比和应用中的注意事项。
3、NSTimer会retain目标对象,可能会造成循环引用,请在NSTimer的基础上封装一个不retain目标对象的Timer,要求至少实现下面两个方法,并介绍设计思路。
@interface NSTimer : NSObject
+(NSTimer *)scheduledTimerWithTimeInterval : (NSTimerInterval)ti target: (id)aTarget
selector: (SEL)aSelector userInfo: (id)userinfo repeats: (BOOL)yesOrNo;
-(void)invalidate;
//other methods…