美团点评2016研发工程师笔试题(三)

1.25匹马赛跑,每次只能跑5匹马,最快能赛几次找出跑得最快的3匹马?赛跑不能计时,并假设每匹马的速度是恒定不变的。请给出答案并描述比赛过程。

2.有一个函数“int f(int n)”,请编写一段程序调试函数f(n)是否总是返回0,并添加必要的注视和说明。

3.有ABCD四个人要在夜里过一座桥,他们通过这座桥分别需要耗时1、2、5、10分钟,现在只有一支手电,过桥时必须带有手电,并且同时最多只能两个人一起过桥。请问如何安排能够让四个人尽快都过桥。

4.在有团购之前,大家都是现场买门票,公园的门票是5元,某天售票处开门时没有准备零钱。假设一天来购票的依次有2N个人,其中有N个人有5元零钱,其他N个人只有10元面值的钱;假设每人只买一张票。请问任何人都不必为找零而等待的概率是多少?

5.在网站推荐区域内,会循环播出五个商家出售的五种商品,五种商品的代号为(A,B,C,D,E)

一.B比它前一个商品贵12元

二.E比它后一个商品贵5元

三.C比它前一个商品贵14元

四.D比它前一个商品便宜5元

五.其中D的价格是16元,B的价格是40元

六.5个商品的价格按照价格从低到高是D,E,A,C,B

七.5个商品之和是135元

请问E的下一个是:( )

a. A     b. B       c. C     d. D

6.浏览器和服务器在基于https进行请求链接到数据传输过程中,用到了如下哪些技术:( )

a.非对称加密技术  b.对称加密技术   c.散列(哈希)算法   d.数字证书

7.java关于异常处理机制的叙述哪些正确( )

a. catch部分捕捉到异常情况时,才会执行finally部分

b. 当try区段的程序发生异常时,才会执行catch区段的程序

c. 在try区段不论程序是否发生异常及捕获到异常,都会执行finally部分

d. 以上都是

8.单链表实现的栈,栈顶指针为Top(仅仅是一个指针),入栈一个P节点时,其操作步骤为:( )

a.  Top->next=p;

b. p->next=Top->next;Top->next=p;

c. p->next=Top;Top=p->next;

d. p->next=Top;Top=Top->next;

9.有以下程序:

main()
{
     int a=1;
     int b=3;
     int c=5;
     int *p1=&a;
     int *p2=&b;
     int *p=&c;
     *p=*p1*(*p2);
     printf(""%d\n"",c);
}

执行后的输出结果是( )

a.1   b.2  c.3   d.4

10.下面哪些不是链表的特征( )

a.数据在内存中一定是连续的

b.插入或删除时,无需移动其它元素

c.可以随机访问表内的元素

d.需要事先估计存储空间

11.下面哪一个选项是应用层的协议( )

a. TCP  b. FTP  c. UDP  d. ARP

12.同一进程的各个线程可以共享哪些内容?( )

a.寄存器内容   b.堆    c.栈    d.线程私有数据

13. k链表翻转。给出一个链表和一个数k,比如链表1→2→3→4→5→6,k=2,则翻转后2→1→4→3→6→5,若k=3,翻转后3→2→1→6→5→4,若k=4,翻转后4→3→2→1→5→6,用程序实现。

14. 从1到1000000的所有自然数,数字“1”一共出现了多少次?例:自然数101中,数字“1”出现了2次,自然数1011中,数字“1”出现了3次,请写明计算过程及结果。

15. 有一个随机数发生器,以概率P产生0,概率(1-P)产生1,请问能否利用这个随机数发生器,构造出新的发生器,以1/2的概率产生0和1。请写明结论及推理过程。

16. 请找出下面代码中的所有错误

 说明:以下代码是把一个字符串倒序,如“abcd”倒序后变为“dcba” #include""string.h""

main()
  {
   char*src=""hello,world"";
   char* dest=NULL;
   int len=strlen(src);
   dest=(char*)malloc(len);
    char* d=dest;
   char* s=src[len];
   while(len--!=0)
       d++=s--;
   printf(""%s"",dest);
   return 0;
 }

17.一个汽车公司的产品,甲厂占40%,乙厂占60%,甲的次品率是1%,乙的次品率是2%,现在抽出一件汽车时次品,问是甲生产的可能性?

18.一堆硬币,一个机器人,如果是反的就翻正,如果是正的就抛掷一次,无穷多次后,求正反的比例。

19.用两个栈模拟队列先进先出,模拟其add和romve功能,给出思路和代码。

20.以下哪个ip不和10.11.12.91/28处于同一个子网( )

a.10.11.12.85/28   b.10.11.12.88/28   c.10.11.12.94/28    d.10.11.12.97/28

21.以下哪个属于在预编译阶段执行____,以下哪些指令属于操作符___ 

 a:malloc; b:++;c:#pragma;d:sizeof; e:#define( )

a.预编译c,e 操作符a,b

b.预编译c,d 操作符b,e

c.预编译c,e 操作符b,d

d.预编译a,d 操作符b,d

22.上网的时候发现网页不能访问,QQ使用正常,出现此问题最可能的原因是( )

a.网线问题 b.DNS问题  c.IP地址冲突   d.网关错误

23.以下哪些jvm的垃圾回收方式采用的是复制算法回收( )

a.新生代串行收集器  b.老年代串行收集器  c.并行收集器    d.新生代并行回收收集器

24.在网络7层协议中,如果想使用UDP协议达到TCP协议的效果,可以在哪层做文章?( )

a.应用层    b.表示层     c.会话层   d.传输层

25.具有7个顶点的有向图至少应有多少条边才可能成为一个强连通图?( )

a.6     b.7    c.8     d.12

26.以下关于linux操作系统中硬链接和软链接的描述,正确的是?( )

a.硬链接和软链接指向的inode的编号是一样的

b可以建立一个空文件的软链接

c.linux操作系统可以对目录进行硬链接

d.硬链接指向inode节点

27.假设在x86平台上,有一个int型变量,在内存中的内部由低到高分别是:0x12,0x34,0x56,0x78当通过网络发送该数据时,正确的发送顺序是( )

a. 0x12,0x34,0x56,0x78

b. 0x78,0x56,0x34,0x12

c. 0x34,0x12,0x78,0x56

d. 0x56,0x78,0x12,0x34

28.HTTPS是使用( )来保证信息安全的.

a. SET  b. IPSEC  c. SSL  d. SSH

29.我们用一个等臂天平来称物体的质量,如果我们要称的物体质量范围在1到40克(整数),请问我们最少需要几块砝码可以完成这项物体质量的称量?( )

a.3     b.4      c.5    d.6      e.7

30. 两个线程并发执行以下代码,假设a是全局变量,那么以下输出( )哪个是可能的?

  int a=1;
void foo(){
    ++a;
    printf(""%d"",a);
}

a.3 2       b.2 3       c.3 3          d.2 2

31.开发C代码时,经常见到如下类型的结构体定义:

typedef struct list_t{
struct list_t *next;
struct list_t *prev;
char data[0];
}list_t;

最后一行char data[0];的作用是?( )

a.方便管理内存缓冲区 b.减少内存碎片化      c.标识结构体结束 d.没有作用

32.请问在32位系统中,sizeof(list_t)的值为?( )

a. 4byte     b. 8byte      c. 5byte    d. 9byte

33.具有相同类型的指针类型变量p与数组a,不能进行的操作是:( )

a. p=a;    b. *p=a[0];      c. p=&a[0];     d. p=&a;

34.HTTP中的POST和GET在下列哪些方面有区别?( )

a.数据位置    b.明文密文    c.数据安全     d.长度限度    e.应用场景

35.在linux系统中,有一个文件夹里面有若干文件,通常用哪个命令可以获取这个文件夹的大小:( )

a. ls -h     b. du -sh      c.  df -h       d. fdish -h

36.一棵非空的二叉树的先序遍历序列与后序遍历序列正好相反,则该二叉树一定满足?( )

a.所有的结点均无左孩子    b.所有的结点均无右孩子    c.只有一个叶子结点       d.是一棵满二叉树

37.C++中构造函数和析构函数可以抛出异常吗?( )

a.都不行    b. 都可以    c. 只有构造函数可以    d.只有析构函数可以

38.给字母重新进行二进制编码,以使得"MT-TECH-TEAM"(包含连字符,不包含引号)的长度最小.并能够根据编码,解码回原来的字符串.请问最优编码情况下该字串的长度是多少bit?( )

a. 12       b. 33       c. 36      d. 84       e. 96

39.开发C代码时,经常见到如下类型的结构体定义:

typedef struct list_t{
struct list_t *next;
struct list_t *prev;
char data[0];
}list_t;

最后一行char data[0];的作用是?( )

a.方便管理内存缓冲区   b.减少内存碎片化    c.标识结构体结束   d.没有作用

40.以下序列中不可能是一棵二叉查找树的后序遍历结构的是:( )

a. 1,2,3,4,5     b. 3,5,1,4,2     c. 1,2,5,4,3     d. 5,4,3,2,1

41.由A地到B地,中间有一段扶梯,总路程和扶梯长度是固定的,为赶时间全程都在行走(包含扶梯上),中途发现鞋带松了,需要停下来绑鞋带.请问在扶梯上绑鞋带和在路上绑鞋带两种方式比较( )

a.路上绑鞋带,全程用时短

b.扶梯上绑鞋带,全程用时短

c.用时一样

d.和扶梯长度,绑鞋带具体用时有关

42.mysql数据库中一张user表中,其中包含字段A,B,C,字段类型如下:A:int,B:int,C:int根据字段A,B,C按照ABC顺序建立复合索引idx_A_B_C,以下查询语句中使用到索引idx_A_B_C的语句有哪些?( )

a. select *from user where A=1 and B=1

b. select *from user where 1=1 and A=1 and B=1

c.select *from user where B=1 and C=1

d. select *from user where A=1 and C=1

43.以下代码输出什么? ( )

int a =1,b =32 ;

printf(""%d,%d"",a<<b,1<<32);

a.1,1    b. 1,0      c. 0,0     d. 取决于编译器

44.将7723810的各位数字打乱排序,可组成的不同的7位自然数的个数是?( )

a. 1080    b. 2160    c. 3240     d. 4320     e. 5040

45.在x86系统下,sizeof如下结构体的值是多少? ( )

struct{ 
char a[10];
int b;
shortc[3];
}

a.20     b. 22       c. 24       d. 26

46.对于满足SQL92标准的SQL语句:

select foo,count(foo)from pokes where foo>10group by foo

having count (*)>5 order by foo  

其执行顺序应该是?( )

a.FROM->WHERE->GROUP BY->HAVING->SELECT->ORDER BY

b.FROM->GROUP BY->WHERE->HAVING->SELECT->ORDER BY

c.FROM->WHERE->GROUP BY->HAVING->ORDER BY->SELECT 

d.FROM->WHERE->ORDER BY->GROUP BY->HAVING->SELECT

47.下列关于线程调度的叙述中,错误的是( )

a.调用线程的sleep()方法,可以使比当前线程优先级低的线程获得运行机会

b.调用线程的yeild()方法,只会使与当前线程相同优先级的线程获得运行机会

c.具有相同优先级的多个线程的调度一定是分时的

d.分时调度模型是让所有线程轮流获得CPU使用权

48.有9个球,其中一个的质量与其他的不同,有一个天平,通过最多几次可以找出那个质量不一样的球?( )

a. 2    b. 3    c. 4    d. 5

49.对进程和线程的描述,以下正确的是( )

a.父进程里的所有线程共享相同的地址空间,父进程的所有子进程共享相同的地址空间

b.改变进程里面主线程的状态会影响到其他线程的行为,改变父进程的状态不会影响到其他子进程

c.多线程会引起死锁,而多进程不会

d.以上选项都不正确

参考答案:https://download.csdn.net/download/weixin_39813541/11166360

猜你喜欢

转载自blog.csdn.net/weixin_39813541/article/details/89951038