腾讯2015校招笔试题选择题部分
来源:互联网 发布:unity3d vr材质 编辑:程序博客网 时间:2024/04/28 18:50
1、 如果MyClass为一个类,执行”MyClass a[5], *b[6]”语言会自动调用该类构造函数的次数是() B
A. 2 B.5 C. 4 D.9
解析::MyClass a[5],会创建5个对象,所以会自动调用5次构造函数,但是MyClass *b[6],这不会自动调用构造函数,因为这是声明一个指向6个元素的数组的指针,指针声明的时候是不分配空间的,所以不会调用构造函数,没有指向一个有效的内存空间。
2、下面程序的运行结果是() C
#include
using namespace std;
class Base
{
int x;
public:
Base(int b):x(b) {}
virtual voiddisplay()
{
cout<<x<<endl;
}
};
class Derived:public Base
{
int y;
public:
Derived(intd):Base(d),y(d) {}
void display()
{
cout<<y<<endl;
}
};
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
解析:典型的多态。b.display()会调用基类的方法,d.display()会调用子类的方法。d是子类对象,因此p->display()会调用子类的方法。
3、在C++语言中,下面描述中,正确的是()B
A. 一个基类的声明中有纯虚函数,该基类派生类一定不再是抽象类
B. 函数类型不能作为重载函数的调用的依据
C. 静态数据成员不是所有对象所公有的
D. 内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方
解析:A.基类也可以还是抽象类;B正确,函数重载只能是改变函数参数的个数和类型;
C错误,静态数据成员是所有对象所公有的;D错误,内联函数是在编译时将该函数的目标代码插入每个调用该函数的地方。
4、有如下程序:执行后的输出结果应该是()D
#include <iostream>
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. BASEDERIVED D. DERIVEDBASE
解析:x是子类对象,子类在调用构造函数时,会先调用父类的构造函数,再调用子类的构造函数;在调用析构函数时,会先调用子类的析构函数,再调用父类的析构函数。
5、典型的路由选择方式有两种,静态路由和动态路由。以下描述正确的是()AD
A. 当动态路由与静态路由发生冲突时,以静态路由为准
B. 当动态路由与静态路由发生冲突时,以动态路由为准
C. 静态路由适用于网络规模大、网络拓扑复杂的网络
D. 动态路由适用于网络规模大、网络拓扑复杂的网络
解析:静态路由是在路由器中设置的固定的路由表,静态路由的优点是简单、高效、可靠,一般用于网络规模不大、拓扑结构固定的网络中。动态路由是网络中的路由器之间相互通信,传递路由信息,利用收到的路由信息更新路由器表的过程。动态路由适用于网络规模大、网络拓扑复杂的网络。在所有的路由中,静态路由优先级最高,当动态路由与静态路由发生冲突时,以静态路由为准。
6、下列哪些属于分布式文件系统?()D
A. HBase
B. Spark
C. MapReduce
D.KFS
E. Hive
解析:HBase是一个分布式、面向列的数据库;Spark是一个大数据架构;MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算;KFS是一个专门为数据密集型应用(搜索引擎,数据挖掘等)而设计的存储系统,是一个分布式文件系统;hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表。
7、 下面程序的输出结果是()
#include <iostream>
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<<k;
return 0;
}
A. 13 B. 14 C.15 D. 16
解析:答案应该是11。在函数内部定义的i是个局部变量,只在大括号代码段内有用,大括号内代码段执行完后k的值为11,第二次调用fun函数时,i的值变为全局变量的值0。因此最后的结果为11。
8、在Java中,以下那些数据结构可以以常量的时间复杂度0(1)添加元素()AD
A. HashMap B.ArrayList C. TreeMap D. LinkedList
解析:HashMap可以做到常量时间添加元素;ArrayList内部实现是基于数组的,数组元素不能保证在O(1)时间内任意添加一个元素;TreeMap内部是基于红黑树的,插入和删除操作都涉及到树结构的调整;LikedList是基于链表的,链表插入操作的复杂度是O(1)。
9、若一棵二叉树的前序遍历为a, e, b, d, c,后序遍历为b, c, d, e, a,则根节点的孩子节点为()A
A. 只有e B. 有e、b C.有e、cD. 无法确定
解析:根据二叉树的前序和后序遍历,可以直接还原二叉树。
10、一面墙,单独工作时,A花18小时砌好,B花24小时,C花30小时,现A, B, C的顺序轮流砌,每人工作1小时换班,完工时,B总共干了多少小时?()B
A. 8小时 B.7小时44分 C.7小时 D. 6小时48分
解析:假设总工作量是360,则A每小时完成20,B每小时完成15,C每小时完成12。每个人工作7小时后,完成的工作量是329,还差31。A再工作1小时后,还剩11。则B需要再工作11/15*60=44分钟。所以B总共干了7小时44分钟。
11、32位机器上定义如下结构体:
struct xx {
long long _x1;
char _x2;
int _x3;
char _x4[2];
static int _x5;
};
int xx::_x5;
请问sizeof(xx)的大小是()D
A.19 B.20 C.15 D.24
解析:_x5位static变量,不占struct的内存空间。_x1对齐大小8个字节,_x2和_x4对齐大小为1个字节,_x3对齐大小为4个字节,所以xx的对齐大小为8字节。字节对齐图如下:
|----------longlong----------|
|char|--------|-------int-------|
char|char|--------------------|
所以xx总共会占24个字符。
12、储蓄盒中2分和5分的硬币的个数相等,恰好分成钱数也相等的两份,问:可能是多少元?()AC
A.2.1元 B.2.4元 C.2.8元 D. 3.0元
解析:个数相等,肯定是0.7的倍数,A和C都有可能。
13、入栈序列是:a1,a3,a5,a2,a4,a6出栈序列是:a5,a4,a2,a6,a3,a1,则栈的容量最小是多少()C
A. 2 B.3 C. 4 D. 5
解析:具体出入栈操作:a1入栈,a3入栈,a5入栈,a5出栈,a2入栈,a4入栈,此时栈内元素的大小为4,a4出栈,a2出栈,a6入栈,a6出栈,a3出栈,a1出栈。栈中元素最多的时候是4个,因此栈的容量最小是4。
14、TCP报文首部信息中与关闭连接有关的是()BD
A.URG B.ACK C. SYN D.FIN
15、
int foo(int n)
{
if (n<=1)
return 1;
return n*foo(n-1);
}
上面算法时间复杂度是()B
A. 0(log2n) B. 0(n) C.0(nlog2n) D. 0(n2)
解析:要调用函数foo n次,foo每次执行都是线性时间,所以复杂度是O(n)。
16、turbo c环境下,下面程序运行的结果是()D
#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
解析:p指向的是数组a的首地址,k指向指针a的地址。*(p++)会先返回p指向的值,即1,再使p指向a[1]的地址。此时,**k的值是2。因此,程序执行的结果是12。
17、现有一个包含m个节点的三叉树,即每个节点都有三个指向孩子结点的指针,请问:在这3m个指针中有()个空指针。C
A. 2m B.2m-1 C. 2m+1 D.3m
解析:最快的办法,可以直接用特例法。
18、在下面的描述中,哪些不属于数据库安全性的措施()AC
A. 普通ZIP压缩存
B. 关联加密存储
C. 数据分段
D. 授权限制
E. 数据多机备份
解析:A和C跟数据库安全无关。
19、以下哪些工具可以写实源机器与目标机器之间的路由数量,以及各路由之间的RTT()A
A. Traceroute B.Ping C. FTP D. Telnet
20、流量劫持是网络安全中常见的安全威胁,下列哪些情况可能会造成流量劫持?()ABC
A. MAC地址欺骗
B. DNS劫持
C. 伪造的DHCP服务器
D. 使用https协议
21、以下哪些可以工作于数据链路层?()AC
A. tcpdump B. 集线器 C.交换机 D. 路由器
22、UDP报头中没有下面那些信息?()ABC
A.目的地址 B.窗口大小 C.序列号 D.检验和
解析:UDP报头中包括源端口号、目标端口号、长度和校验和。
23、以下方法那些可以让一个元素浮动起来()BC
A.mutable B.absolute C.fixed D. static
解析:网上看到的答案,不懂。。。。
24、在竞选条件(race condition)的情况下,两线程执行如下代码段,其中count为共享变量,线程1执行代码段A,线程2指向代码段B,那么变量count的值可能为()ABC
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分,请问下这时,时针跟分针的最小夹角是多少度?()B
A.25度 B.26度 C.28度 D. 32度
解析:时针转过的角度为5/12*360+32/60*30=166度,分针转过的角度为32/60*360=192度,时针跟分针的最小夹角是192-166=26度。
- 腾讯2015校招笔试题选择题部分
- 2016腾讯校招笔试 (部分题目)
- [腾讯笔试] 2016腾讯校招技术类笔试(大题部分)
- 腾讯校招笔试题
- 2013腾讯校招笔试题
- 腾讯2016校招笔试题
- [2017腾讯校招在线笔试题]
- 腾讯2016校招笔试题
- 腾讯2016校招笔试题
- 腾讯2016校招笔试
- 2015美团校招部分笔试题
- 2015美团校招部分笔试题
- 2015美团校招部分笔试题
- 腾讯2015实习生招聘笔试题部分
- 写写2015腾讯校招笔试(后台开发)
- 腾讯2013校招技术类笔试题
- 2014腾讯校招上海站笔试题
- 腾讯2016校招笔试题(含答案)
- PHP中判断变量为空的五种方法
- 在VMware Workstation 9中安装Mac OS X 10.8 Mountain Lion
- 如何利用General框架进行三层架构开发
- Android 亮度调节
- Unity性能优化原则(一)
- 腾讯2015校招笔试题选择题部分
- JQuery的$.extend()的简单用法
- ubuntu逃逸到本地权限提升
- fastjson常见问题
- iOS开发常用的几大工具
- 查询条件表单使用ajax异步提交
- Java开发中常见的5个错误
- android http 辅助类
- 最小化数值误差