腾讯2018秋招开发模拟题,分享给大家
1、把QQ用户分成三个年龄段:小于16岁,16到18岁,大于18岁,从三个年龄段中任意选取4人参加用户调查,请问有多少种选法?( )
A. 12
B. 14
C. 15
D. 18
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().
题目代码有误,正确代码如下:
#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
5、关于C++中修饰符static和extern说明正确的是( )。
A. static修饰类属成员对象或函数,则它们是所有类对象共享的
B. static修饰全局对象或函数,则它们也是全局所有工程文件共享的
C. 类属static函数和非static函数可以重载
D. 工程包括A、B两个文件,在文件A定义全局静态对象,可以在文件B中extern声明后访问
6、众所周知,队列是先进先出的数据结构,栈是先进后出的数据结构,封装尽可能少的队列来实现一个栈,即使用进队出队的方法来实现压栈弹栈,你觉得需要几个队列( )
A. 不可能实现
B. 3
C. 2
D. 1
E. 0
7、以下哪些同步方法不能用于线程之间同步( )
A. 互斥锁(mutex/futex)
B. 条件变量
C.消息队列
D.共享内存
E.unix域socket
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
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”
10、下列关于路由器的描述正确的是( )
A. 维护路由表,更新路由信息
B. 对IP数据包做差错校验
C. 检测网络拥塞,确保IP数据包不丢失
D. 将IP地址转换成Mac地址,根据Mac地址表将数据包转发给其他路由器
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
12、在一个10阶的B-树上,每个树根结点中所含的关键字数目最多允许为( )个,最少为( )个。
A. 10,5
B. 9,4
C. 8,3
D. 7,6
13、在最坏情况下,以下哪些排序算法时间复杂度是O(n2)?( )
A. 归并排序
B. 快速排序
C. 堆排序
D. 冒泡排序
E. 以上都是
14、有三人在玩斗地主(总共54张牌,其中地主20张,两个农民各17张),请问大小王在同一人手里的概率大约是多少(四舍五入)。 ( )
A. 30%
B. 32%
C. 34%
D. 35%
15、现在,有很多实际项目里存在一些场景,开发者自行封装可靠UDP取代TCP的情况,这种处理是出于什么样的考虑,下面那些描述是正确的? ( )
A.使用UDP协议通讯,在移动网络上可以获得更快的响应速度
B.使用TCP协议通讯,在网络拥堵的情况下,重传机制可能会带来很大的时延,并且很难优化
C.对于单个请求包较大的情况下,超过一个MTU的场景,UDP的效率更高
D.对于包次序没有强制要求的业务场景,UDP协议比TCP协议更高效
在线编程题
1、对于一棵满二叉排序树深度为K,节点数为2^K-1;节点值为1至(2^K-1)。 给出K和任意三个节点的值,输出包含该三个节点的最小子树的根节点值。
样例输入:4 10 15 13
样例输出:12