zoukankan      html  css  js  c++  java
  • DDCX2018届校招内推笔试——算法工程师

    -------------------------------------------------------------------------【选择题】-------------------------------------------------------------------------

    1、以下不属于判别模型的是:()

    A. 隐马尔科夫模型

    B. 朴素贝叶斯法

    C. 混合高斯模型

    D.  SVM

    LLT:D

    2、强化学习中的MDP模型不包括哪一类?()

    A. TD

    B. MC

    C. DP

    D. CV

    LW:D

    3、强化学习中,TD(lambda)算法中lambda 取值为1 时等价于以下哪种模型?()

    A. Q-learning

    B. 蒙特卡洛

    C. 动态规划

    D. Sarsa

    B?

    4、对于非连续目标在深度神经网络的优化过程中,下面哪种梯度下降方法是最好的?()

    A. L-BFGS

    B. SGD

    C. AdaGrad

    D. Snigredient method

    5、下列哪些项所描述的相关技术是对的?()

    A. AdaGrad 使用的是一阶差分

    B. L-BFGS使用的是二阶差分

    C. AdaGrad 使用的是二阶差分

    D. L-BFGS使用的是一阶差分

     2和3   1和2  1和4  3和4

    LLT:B

    6、给定一个长度为n 的不完整单词序列,我们希望预测下一个字母是什么。比如输入是“predictio”(9个字母组成),希望预测第10个字母是什么。下面哪种神经网络结构适用于解决这个工作?

    A. 循环神经网络

    B. 全连接神经网络

    C. 受限玻尔兹曼机

    D. 卷积神经网络

    FZP:A

    7、在以下不同的场景中,使用的分析方法不正确的是()

    A. 用关联规则算法分析出乘坐快车的乘客,是否适合推荐乘坐专车

    B. 根据司机近期的订单数据,用聚类算法拟合出乘客未来可能的乘车花费价格公式。

    C. 根据司机最近一年的服务订单数据,用聚类算法判断出滴滴司机在不同产品线下所属的司机层级

    D. 根据乘客最近的乘车信息,用决策树算法识别出乘客可能是男还是女

    8、关于RF和GBDT的表述哪个是不正确的?

    A. GBDT 可以自动筛选特征

    B. RF是通过减小方差,来提高泛化能力

    C. RF并行建立模型,模型与模型之间并没有太强的依赖

    D. GBDT的基模型是低偏差高方差的模型

    FZP:D

    9、【多选】已知下述某棵二叉树的遍历顺序,能够还原出二叉树的是()

    A. 先序遍历和后序遍历

    B. 中序遍历和后序遍历

    C. 先序遍历和中序遍历

    D. 不确定

    LLT:BC

    10、【多选】关于L1正则和L2正则,下面的说法正确的是()

    A. L2正则化有个名称叫“Lasso regularization”

    B. L2正则化标识各个参数的平方的和的开方值

    C. L2范数可以防止过拟合,提升模型的泛化能力。但L1正则化做不到这一点

    D. L1范数会使权值稀疏

    -------------------------------------------------------------------------【智力题】-------------------------------------------------------------------------

    1、数列中哪个数不属于这个队列:  2 - 3 - 6 - 7 - 8 - 14 - 15 - 30

    A.3

    B.7

    C.8

    D.15

    答案:C

    2、甲和乙一起玩游戏——抢数字,设置要抢的数字是S,每次只能数N个(5<=N<=10),两人轮流数。最后谁数到S谁获胜,若甲先开始,那么当S为多少时候甲必胜?()

    A.2017

    B.2019

    C.2021

    D.2023

    答案:A、B

    3、两个口袋,每个口袋里都装着60个红球与40个白球,有两人各自从一个口袋抽了一个球。 则抽出不同色球的概率为 :()

    A.0.5

    B.0.24

    C.0.3

    D.0.48

    答案:D

    解析:抽中两个红球概率0.6*0.6,抽中两白球概率为0.4*0.4,其余为不同色概率

    4、某粮仓有60万担粮食,现需要给前线运送粮食,粮仓距离前线行程有15天,但是运粮队每次只能携带30万担粮食,且每天行军需要消耗1万担粮食,问其最多能将多少万担粮食运到前线?()

    A.15

    B.20

    C.25

    D.30

    答案:C

    解析:先运30万担粮食到10天处,留下10w担粮食然后返回,再将剩余粮食运到10天处,带上之前10万粮食走完剩余的5天路程。

    5、计算P=1111+1111*2+1111*3+…+1111*1111,P除以5的余数是多少?()

    A.0

    B.1

    答案:B

    解析:P=1111*(1+2+…+1111)= 1110 *(1+2+…+1111) + (1+2+…+1111),1110是5的倍数,因此余数为0,最终结果为(1+2+…+1111)%5。

    6、DDCX年会大 Party 已经开始筹划,小明作为总策划人,计划来一个“专车送喜”的节目引爆全场。节目主要是把神秘礼物放在一个大铁球中,铁球固定在牢固的地桩上,然后用汽车拉开铁球释放神秘礼物。任一铁球拉开所需的汽车数量一模一样,且拉开后不可恢复,铁球可能只要1辆车就能拉开,也可能要100辆车才能拉开。年会前2个测试用的铁球已经送到,现在小明请你用这2个铁球、100辆车(每辆车提供的马力一样)来测试每个铁球至少需要配多少辆车才能拉开。聪明的你最少要经过多少次测试能得出结论呢?()

    A.12

    B.14

    C.25

    D.33

    答案:B

    7、小桔A和小桔B轮流在方桌上放硬币,规则是硬币不能互相覆盖,谁最后没有地方放为输,请问下面哪个答案正确?()

    A.后放者有必胜策略

    B.先放者有必胜策略

    C.无论谁都没有必胜策略

    答案:B

    8、房间里有8人,分别佩戴着从1号到8号的纪念章,任选3人记录其纪念章号码,最大的号码为6的概率()

    A.1/4

    B.9/28

    C.3/14

    D.5/28

    答案:D

    9、每个飞机只有一个油箱,飞机之间可以相互加油(注意是相互,没有加油机),一箱油可供一架飞机绕地球飞半圈. 问:为使至少一架飞机绕地球一圈回到起飞时的飞机场,至少需要出动几架飞机? (所有飞机从同一机场起飞,而且必须安全返回机场,不允许中途降落,中间没有飞机场)

    A.3

    B.4

    C.5

    D.6

    答案:C

    10、有二十五匹速度各不相同的马来赛跑,一次只能跑五匹,每匹马每次跑的状态稳定,没有计时设备,那么请问:最少需要多少次才能找出跑得最快的三匹马?()

    A.6

    B.7

    C.8

    D.11

    答案:B

    -------------------------------------------------------------------------【编程题】-------------------------------------------------------------------------

    1、给定无序整数序列,求连续子串最大和,例如{-23 17 -7 11 -2 1 -34},子串为{17,-7,11},最大和为21

    输入描述:输入为整数序列,数字用空格分隔,如:-23 17 -7 11 -2 1 -34

    输出描述:输出为子序列的最大和:21

    示例1

    输入:-23 17 -7 11 -2 1 -34

    输出:21

    求连续子串最大和
    #include <bits/stdc++.h>
    using namespace std;
    const int inf = 1e9;
    int main() {
        int sum = 0, ans = -inf, x;
        while(cin >> x) {           
              sum += x;       
              if(sum >= 0) ans = max(ans, sum);       
              else sum = 0;       
              if(ans == -inf) ans = x;
        }
        cout << ans << endl;
        return 0;
    }

    2、给定无序整数序列,求其中第K大的数,例如{45 ,67 ,33 ,21},第2大数为45.

    输入描述:输入第一行为整数序列,数字用空格分隔,如:45  67  33  21

              输入第二行  为一个整数K,K在数组长度范围内,如:2

    输出描述:输出第K大的数,本例为第2大数:45

    求其中第K大的数 
    #include <bits/stdc++.h>
    using namespace std;
    vector<int> v;
    int main() {
    int x;
    while(cin >> x) v.push_back(x);
    int k = v[v.size() - 1];
    v.pop_back();
    sort(v.rbegin(), v.rend());
    cout << v[k - 1] << endl;
    return 0;
    }

    附加:

    -------------------------------------------------------------------------【产品题】-------------------------------------------------------------------------

    如何推算在一个城市的共享单车投放量和每日交易数量?

    如何让用户越来越多的使用拼车出行?

  • 相关阅读:
    Codeforces 813F Bipartite Checking 线段树 + 并查集
    Codeforces 263E Rhombus (看题解)
    Codeforces 173E Camping Groups hash
    Codeforces 311C Fetch the Treasure 取模意义下的最短路 (看题解)
    R 培训之 Table
    Docker命令详解
    Celery的实践指南
    Using Celery with Djang
    PostgreSQL
    改时区参考
  • 原文地址:https://www.cnblogs.com/shenxiaolin/p/7520002.html
Copyright © 2011-2022 走看看