腾讯2018秋招Java模拟题

不定项选择题

1、把QQ用户分成三个年龄段:小于16岁,16到18岁,大于18岁,从三个年龄段中任意选取4人参加用户调查,请问有多少种选法?( )

A. 12

B. 14

C. 15

D. 18

参考答案:A

2、

#include<stdio.h>
class  Base
{
public:
virtual void foo(){printf(“call Base::foo().\n”);}
void bar(){printf(“call Base::Derive().\n”);foo();}
};
class Derive:public Base
{
public:
void foo(){printf(“call Derive::foo().\n”);}
void bar(){printf(“call Derive::Derive().\n”);foo();}
};
int main()
{
Base * ptr = new Derive();
if(ptr !=NULL) ptr->bar();
return 0;
}


A. call Derive::bar().

call Derive::foo().

B. call Derive::bar().

call Base::foo().

C. call Base::bar().

call Derive::foo().

D. call Base::bar().

call Base::foo().

参考答案:C

备注:题目代码有误,正确代码如下:

#include<stdio.h>
class Base
{
public:
virtual void foo(){printf("call Base::foo().\n");}
void bar(){printf("call Base::bar().\n");foo();}
};
class Derive:public Base
{
public:
void foo(){printf("call Derive::foo().\n");}
void bar(){printf("call Derive::bar().\n");foo();}
};
int main()
{
Base * ptr = new Derive();
if(ptr !=NULL) ptr->bar();
return 0;
}


A、Comment字段定义为CHAR(N)类型

4、设一棵二叉树中有3个叶子结点,有8个度为1的结点,则该二叉树中总的结点数为( )。

A. 12

B. 13

C. 14

D. 15

E. 16

参考答案:B

对于任意一棵二叉树,如果其叶结点数为N0,而度数为2的结点总数为N2,则N0=N2+1;

N=3+8+(3+1)=11+4=15

5、关于C++中修饰符static和extern说明正确的是( )。

A. static修饰类属成员对象或函数,则它们是所有类对象共享的

B. static修饰全局对象或函数,则它们也是全局所有工程文件共享的

C. 类属static函数和非static函数可以重载

D. 工程包括A、B两个文件,在文件A定义全局静态对象,可以在文件B中extern声明后访问

正确答案:AC

6、众所周知,队列是先进先出的数据结构,栈是先进后出的数据结构,封装尽可能少的队列来实现一个栈,即使用进队出队的方法来实现压栈弹栈,你觉得需要几个队列( )

A. 不可能实现

B. 3

C. 2

D. 1

E. 0

参考答案:C

7、以下哪些同步方法不能用于线程之间同步( )

A. 互斥锁(mutex/futex)

B. 条件变量

C.消息队列

D.共享内存

E.unix域socket

参考答案:C、D、E

8、下面代码的输出结果是( )

struct B {
B(){s_count_++;)}
virtual void dec(){s_count_--;}
static int s_count_;
};
int B::s_count_=0;
struct D:public B{
D(){s_count_+=2;}
virtual void dec(){s_count_-=2;}
};
int main(){
B*pd = new D[3];
for(int i = 0;i<3; i++){
pd[i].dec();
}
std::cout<<B::s_count_<<”,”;
B b = pd[0];
b.dec();
std::cout<<B::s_count_<<std::endl;
return 0;
}


A. 0,0

B. 2,2

C. 3,2

D. 3,1

参考答案:C

9、假设MySQL数据库中建立了对字段A、B、C的联合索引(A、B、C),请问下面哪些查询可以利用到这个索引?( )

A.select id form table where A = “x” and B = ‘y” and C = “z”

B.select id form table where A = “x” and B = “y”

C.select id form table where A = “x”

D.select id form table where A = “x” and C = “z”

参考答案:A、B、C

10、下列关于路由器的描述正确的是( )

A. 维护路由表,更新路由信息

B. 对IP数据包做差错校验

C. 检测网络拥塞,确保IP数据包不丢失

D. 将IP地址转换成Mac地址,根据Mac地址表将数据包转发给其他路由器

正确答案:A

11、TCP使用三次握手协议来建立连接,设甲乙双方发送报文的初始序号分别为X和Y,甲方发送(1)的报文给乙方,乙方接收报文后发送(2)给甲文,然后甲方送文一个确认报文给乙方便建立下了连接。(ACK的下标为捎带的序号。

A. 1.  SYN = 1,序号=X

2. SYN=1,序号=X+1

B.  1. SYN = 1,序号=X+1,ACKx=1

2. SYN = 1,序号=X+1,ACKx=1

C.  1. SYN=1,序号=Y

2. SYN=1,序号=Y,ACKx + 1=1

D.  1. SYN=1,序号=y,ACKy + 1=1

2. SYN=1,序号=y,ACKy + 1=1

参考答案:C

解析:第一次发送的报文没有ACK,B、D排除;第二次回复的报文有ACK,A排除,只剩下答案C,选之。

12、在一个10阶的B-树上,每个树根结点中所含的关键字数目最多允许为( )个,最少为( )个。

A. 10,5

B. 9,4

C. 8,3

D. 7,6

参考答案:B

1.定义任意非叶子结点最多只有M个儿子;且M>2;

2.根结点的儿子数为[2, M];

3.除根结点以外的非叶子结点的儿子数为[M/2, M];

4.每个结点存放至少M/2-1(取上整)和至多M-1个关键字;(至少2个关键字,根节点至少一个关键字。

13、在最坏情况下,以下哪些排序算法时间复杂度是O(n2)?( )

A. 归并排序

B. 快速排序

C. 堆排序

D. 冒泡排序

E. 以上都是

参考答案:B、D

14、有三人在玩斗地主(总共54张牌,其中地主20张,两个农民各17张),请问大小王在同一人手里的概率大约是多少(四舍五入)。 ( )

A. 30%

B. 32%

C. 34%

D. 35%

参考答案:B

出现王炸的概率:K2=K1+2*C(52,15)/C(54,17)=0.3229

15、现在,有很多实际项目里存在一些场景,开发者自行封装可靠UDP取代TCP的情况,这种处理是出于什么样的考虑,下面那些描述是正确的? ( )

A.使用UDP协议通讯,在移动网络上可以获得更快的响应速度

B.使用TCP协议通讯,在网络拥堵的情况下,重传机制可能会带来很大的时延,并且很难优化

C.对于单个请求包较大的情况下,超过一个MTU的场景,UDP的效率更高

D.对于包次序没有强制要求的业务场景,UDP协议比TCP协议更高效

正确答案:ABD

在线编程题

1、对于一棵满二叉排序树深度为K,节点数为2^K-1;节点值为1至(2^K-1)。 给出K和任意三个节点的值,输出包含该三个节点的最小子树的根节点值。

样例输入:4  10  15  13

样例输出:12

答题前请选择使用的编程语言,否则将会被判定为错误答案。自动补全关键字的快捷键是Ctrl+l,撤销快捷键是Ctrl+Z。

个人资料
crazybean
等级:8
文章:61篇
访问:15.7w
排名: 5
上一篇: eBay2018秋招Java试题
下一篇:2018秋招笔试科大讯飞java笔试试题
猜你感兴趣的圈子:
腾讯笔试面试圈
标签: derive、foo、bar、call、序号、面试题
隐藏