爱奇艺2018秋季校招hadoop工程师(第一场)

题目

一、单选题

1、当分配给一个进程的页面数增加时,页故障数可能增大也可能变小,下述算法符合这种情况的是()

A、FIFO算法

B、LRU算法

C、Clock算法

D、LFU算法

2、在深度学习网络中, 以下哪种技术不是主要用来做网络正则化的(提升模型泛化能力)()

A、dropout

B、参数共享

C、Early stopping

D、Pooling

3、查看系统内存如下:

   [@server ~]# free -g

   total used free shared buffers cached

   Mem: 15 5 9 0 0 2

   -/+ buffers/cache: 3 12

   Swap: 0 0 0

那么程序实际可使用内存有多少:()

A、9G

B、11G

C、12G

D、21G

4、执行脚本test.sh,将标准输出重定向到日志logfile,错误输出重定向到logerr中,以下正确的是:()

A、sh test.sh 1> logfile 2> logerr

B、sh test.sh 1> logerr 2> logfile

C、sh test.sh > logfile > logerr

D、sh test.sh 1> logfile > logerr

5、在32位计算机中,下面输出是多少( )

#include <iostream>
using namespace std;
typedef enum
{
    Char ,
    Short,
    Int,
    Double,
    Float,
}TEST_TYPE;
int main() {
    TEST_TYPE val;
    cout<< sizeof(val)<<endl;
        return 0;
}

A、5

B、4

C、8

D、12

6、关于hadoop中通信说法正确的是()

A、client和namenode之间是通过rpc通信

B、datanode和namenode之间是通过socket通信

C、client和datanode之间是通过简单的rpc通信

D、datanode和client之间不用通信

7、SVM的以下两种模型表达是等价的, 则其中的正则化系数λ和C的关系为:()

形式一:

形式二:

A、λ=C

B、λ=1/C

C、λ=C的平方

D、λ=sqrt(C)

8、若前缀表达式为-+a*b-cd/ef,后缀表达式为abcd-*+ef/-,那么对应二叉树的中序遍历序列是( )

A、a+c*d-b-e/f

B、a+b*c-d-e/f

C、a+b*d-c-e/f

D、a+e*c-d-b/f

9、下面关于选择排序说法正确的是( )

A、每扫描一遍数组,需要多次交换

B、选择排序是稳定的排序方法,因为时间复杂度是固定的O(n^2)

C、选择排序排序速度一般要比冒泡排序快

D、空间复杂度为O(1)

10、设置tcp的哪个socket参数会影响了 nagle算法? )

A、TCP_MAXSEG

B、TCP_KEEPALIVEC、

C、TCP_SYNCNT

D、TCP_NODELAY

二、编程题

1、一个合法的括号匹配序列有以下定义:

(1)、空串""是一个合法的括号匹配序列

(2)、如果"X"和"Y"都是合法的括号匹配序列,"XY"也是一个合法的括号匹配序列

(3)、如果"X"是一个合法的括号匹配序列,那么"(X)"也是一个合法的括号匹配序列

(4)、每个合法的括号序列都可以由以上规则生成。

例如: "","()","()()","((()))"都是合法的括号序列

对于一个合法的括号序列我们又有以下定义它的深度:

(1)、空串""的深度是0

(2)、如果字符串"X"的深度是x,字符串"Y"的深度是y,那么字符串"XY"的深度为max(x,y) 3、如果"X"的深度是x,那么字符串"(X)"的深度是x+1

例如: "()()()"的深度是1,"((()))"的深度是3。牛牛现在给你一个合法的括号序列,需要你计算出其深度。

2、牛牛养了n只奶牛,牛牛想给每只奶牛编号,这样就可以轻而易举地分辨它们了。 每个奶牛对于数字都有自己的喜好,第i只奶牛想要一个1和x[i]之间的整数(其中包含1和x[i])。

牛牛需要满足所有奶牛的喜好,请帮助牛牛计算牛牛有多少种给奶牛编号的方法,输出符合要求的编号方法总数。

三、简答题

1.简述hadoop实现Join的几种方法。

参考答案

一、单选题

1~5:ADCAB

6~10:ABBDD

二、编程题

1、

#include<stdio.h>
#include<algorithm>
using namespace std;
int main(){
    int n,i,x,a[100];
    long long res=1,mod=1000000007;
    for(scanf("%d",&n),i=0;i<n;i++) scanf("%d",a+i);
    for(sort(a,a+n),i=0;i<n;i++) res=res%mod*(a[i]-i)%mod;
    printf("%lld",res);
}


2、

#include<stdio.h>
#include<algorithm>
using namespace std;
int main(){
    int n,i,x,a[100];
    long long res=1,mod=1000000007;
    for(scanf("%d",&n),i=0;i<n;i++) scanf("%d",a+i);
    for(sort(a,a+n),i=0;i<n;i++) res=res%mod*(a[i]-i)%mod;
    printf("%lld",res);
}


三、简答题

1、

(1)、reduce side join;

(2)、map side join;

(3)、Semi join;

(4)、reduce side join + BloomFielter.

个人资料
crazybean
等级:8
文章:61篇
访问:15.7w
排名: 5
上一篇: 唯品会2018校招机器学习、算法笔试题(B卷)
下一篇:爱奇艺2018秋季校招hadoop工程师(第二场)
猜你感兴趣的圈子:
爱奇艺笔试面试圈
标签: 括号、合法、奶牛、sh、logerr、面试题
隐藏