美团点评2017秋招笔试真题-后台开发&系统工程师B

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xiao__jia__jia/article/details/82463466


          美团点评2017秋招笔试真题-后台开发&系统工程师B
 


下述解决死锁的方法中,属于死锁预防策略的是?

银行家算法
资源有序分配法 
 资源分配图化简法
 撤消进程法
正确答案: B   你的答案: B (正确)
解析:

银行家算法:避免死锁

资源有序分配法:预防死锁

资源分配图化简法:检测死锁

撤销进程法:解决死锁

下面代码输出的结果是?
public class NULL {

public static void print(){
System.out.println(“MTDP”);
}
public static void main(String[] args) {
try{
((NULL)null).print(); 
}catch(NullPointerException e){
System.out.println("NullPointerException");
}
}
}

NullPointerException
MTDP
都不输出
无法正常编译
正确答案: B   你的答案: B (正确)

下列代码的输出结果是(),

boolean result=false?false:true==false?true:false;

System.out.println(""+result+"");
 

true
null
false
空字符串
正确答案: C   你的答案: C (正确)

 类a继承类b并重写b类的protected方法func时,a中func方法的访问修饰符可以是?
private/protected
protected/public
private/public
private/protected/public
正确答案: B   你的答案: A (错误)
解析:1、重写方法不能比被重写方法限制有更严格的访问级别。子类继承父类的方法时,访问控制符的范围必须大于或等于父类的访问控制符
2、重写方法不能抛出新的异常或者比被重写方法声明的检查异常更广的检查异常。但是可以抛出更少,更有限或者不抛出异常。

Java中关于finally块中的代码描述正确的是?
finally也可以在return后执行
异常没有发生时才被执行
如果try块后没有catch块时,finally块中的代码才会执行
异常发生时才被执行
正确答案: A   你的答案: A (正确)
解析:finally结构使得代码一定能够执行,即使在return语句后面

进程和线程是操作系统中最基本的概念,下列有关描述错误的是?
进程是程序的一次执行,而线程可以理解为程序中运行的一个片段
由于线程没有独立的地址空间,因此同一个进程的一组线程可以访问该进程资源,这些线程之间的通信也很高效
线程之间的通信简单(共享内存即可,但须注意互斥访问的问题),而不同进程之间的通信更为复杂,通常需要调用内核实现
线程有独立的虚拟地址空间,但是拥有的资源相对进程来说,只有运行所必须的堆栈,寄存器等
正确答案: D   你的答案: C (错误)
解析:进程和线程的主要差别在于它们是不同的操作系统资源管理方式。进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但在进程切换时,耗费资源较大,效率要差一些。但对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不能用进程

若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则不可能出现的出栈序是?
2,3,5,1,6,4
4,3,2,1,5,6
3,2,4,1,6,5
2,4,3,1,5,6
正确答案: A   你的答案: A (正确)


若一颗二叉树的前序遍历为a,b,c,d,e,后序遍历为c,e,d,b,a,则根节点的孩子节点是?

只有a
只有b
只有e
有e,c
正确答案: B   你的答案: C (错误)
解析:先看前序遍历,a,b,c,d,e。因为前序遍历是按照根节点,左子节点,右子节点的顺序递归遍历。a第一个出现说明a是根节点,第二个出现b说明b是a的左子节点,第三个出现c说明c可能是a的右子节点或者c是b的左子节点。再看后续遍历,第一个出现c说明c是最左边的节点,所以可以确定c是b的左子节点,d,e在c,b之间,所以可以确定e,d属于b的子节点或者子节点的子节点。就可以确定a只有一个根节点b了


用户表users中含有100万条数据,其中号码字段phone为字符型,并创建了唯一索引,且电话号码全部由数字组成,要统计号码头为158的电话号码的数量,下面写法执行速度最慢的是___
select count(*) from users where phone>= ‘158’ and phone< ‘158A’
select count(*) from users where phone like ‘158%’
select count(*) from users where substr(phone,1,3) = ‘158’
都一样快
正确答案: C   你的答案: C (正确)

解析:调用函数后,就不会用到索引

从装有3只红球,2只白球的盒子中任意取出两只求,则其中有并且只有一只红球的概率为?
1/2
1/5
3/5
2/5
正确答案: C   你的答案: C (正确)
解析:(C3,1 * C2,1)/C5,2 = 3/5

1024! 末尾有多少个0?

297
253
243
238
正确答案: B   你的答案: D (错误)
解析:
末尾0的个数取决于乘法中因子2和5的个数。显然乘法中因子2的个数大于5的个数,所以我们只需统计因子5的个数。 
是5的倍数的数有: 1024 / 5 = 204个 
是25的倍数的数有:1024 / 25 = 40个 
是125的倍数的数有:1024 / 125 = 8个 
是625的倍数的数有:1024 / 625 = 1个 
所以1024! 中总共有204+40+8+1=253个因子5。 
也就是说1024! 末尾有253个0。

从n个数中找出最小的k个数(n >> k),最优平均时间复杂度是?
O(nlogk)
O(klogk)
O(nlogn)
O(n2)
正确答案: A   你的答案: C (错误)

解析:

1.先直接排序,再取排序后数据的前k个数。排序算法用最快的堆排序,复杂度也会达到O(N*logN)。当k接近于N时,可以用这种算法。

2.先排序前k个数,对于后面N-k个数,依次进行插入。时间复杂度为O(k*n)。当k很小时,可以用这种算法。

3.对前k个数,建立最大堆,对于后面N-k个数,依次和最大堆的最大数比较,如果小于最大数,则替换最大数,并重新建立最大堆。时间复杂度为O(N*logk)。当k和N都很大时,这种算法比前两种算法要快很多。

HTTP的会话有四个过程,请选出不是的一个?

建立连接
发出响应信息
发出请求信息
传输数据

正确答案: D   你的答案: A (错误)|
解析:

Http会话的四个过程:

建立连接,发送请求,返回响应,关闭连接。
 

关于TIME_WAIT状态的描述,下面说法错误的是?

TIME_WAIT出现在被动关闭一方,CLOSE_WAIT出现在被动关闭一方
从TIME_WAIT状态到CLOSED状态,有一个超时设置,这个超时设置是 2*MSL
TIME_WAIT确保有足够的时间让对端收到了ACK,如果被动关闭的那方没有收到Ack,就会触发被动端重发Fin,一来一去正好2个MSL
有足够的时间让这个连接不会跟后面的连接混在一起
正确答案: A   你的答案: A (正确)

下面哪些是interface中合法方法定义?
public static void main(String [] args);
boolean setFlags(Boolean [] results);
private float get(int x);
static int getCount();
正确答案: B   你的答案: A B D (错误)
解析:

static方法在interface中要有body,故A、D错误

private修饰的方法不可以出现在interface中,故C错误

选择B(java 1.8 亲测)

一台主机安装了1GB的内存,操作系统为支持MMU的32位Linux发行版,现在运行了abc三个进程,以下哪些使用内存的方式是可以实现的?

abc各申请1GB
a申请500MB b申请500MB c申请25MB
abc一共申请256GB
abc各申请2.5GB
正确答案: A B   你的答案: A B (正确)
解析:有虚拟内存,可以申请大于物理内存的内存空间,但是32位系统最多只能寻址4GB空间。
232B=222KB=212MB=22GB=4GB

下列属于红黑树性质的有?

每个结点要么是红的,要么是黑的
根结点是黑的
每个叶结点(叶结点即指树尾端NIL指针或NULL结点)是黑的
如果一个结点是红的,那么它的俩个儿子都是黑的

正确答案: A B C D   你的答案: A B C D (正确)

猜你喜欢

转载自blog.csdn.net/xiao__jia__jia/article/details/82463466