数据分析笔试题|美团点评2020校招

笔试题来源:牛客网https://www.nowcoder.com/test/question/0bcd9a18de54405faae90acacf1d984a?pid=21910808&tid=35996885
1.题目描述
广告是互联网企业重要的变现模式,在美团的广告业务中,商家会和美团的销售签订不同类型的广告合同(比如,按点击收费的广告cpc、按曝光收费的广告cpm、按时长收费的广告cpt)。美团会为商家创建相关的广告内容素材创意(比如,门店图片、活动图片、促销文字等),并通过美团的广告引擎,根据用户访问的行为特征,基于算法策略将商家的广告内容投放到美团的app或者外部合作伙伴(比如如:腾讯,头条)的app不同的展示位置上。普通用户访问这些广告后,会对商家产生兴趣,可能产生购买转换行为,美团会和商家做广告的计费结算,同时为商户提供用户的广告效果信息(比如:广告带来的门店访问量、订单数等)。
1、 如果让你对这个业务进行抽象,你会抽象出哪些数据分析主题,并说出你这样分的原因;
2、 请你根据问题1抽象的主题,进行主题模型设计,并说明设计的模型内容,以及模型之间的关系。

1、我的答案:
(1)什么类型的广告合同比较合适。因为不同商家的广告适合的广告收费方式是不同的,例如美团入驻的商家可能更多的是按曝光来收费,因为美团APP端可以做到的仅仅是商家的展示,转化更多的是依赖于商家的产品展示、评价等因素。除此之外,不同类型的广告给美团带来的收益也不同。因此,需要做数据分析。
(2)广告内容的测试、投放位置的测试。由于用户的个人行为特征不同,因此美团为商家创建广告内容素材选择、投放的位置等对用户的转化率影响较大,所以这部分需要对用户进行画像,并测试不同的可选方案。
(3)广告效果的分析(转化率)。由于这部分本身是需要提供给商户的信息,除此之外,通过分析还可以总结什么类型的商户的更吸引美团目前的用户,增加用户的活跃,将来可以增加合作。
(4)该广告合作来的收益。广告业务的最终目的仍然是变现,因此,需要分析带带来的收益
2、我的答案
主题模型设计?
(1)根据过去的数据,对商家的特点,例如生命周期等进行分类,并计算不同的广告合同带来的平均收益,除此之外还需要关注商家本身的用户量、评价等因素。
(2)结合过往的数据和商家的特点,设计多个广告内容素材,以及确定投放位置,并进行小批量AB test测试,从而根据测试结果选出最优方案并在后续的投放过程中进行数据的跟踪,不断做出调整
(3)对此次广告增加的访问量、用户数、订单数等方面进行分析,分析用户对该类商家的偏好程度
(4)计算此次广告带来的收益和成本。例如点击收费的广告合同,收益=点击次数*单次点击收益
模型间关系:广告合同选择的数据分析、广告内容位置等选择直接影响广告的访问量、用户数等,反之,此次广告的分析结果,例如收益、商家的欢迎度等会影响下次广告合同、广告内容的选择等。

2.题目描述
说明关系型数据库通过索引提升查询效率的背后原理 。

我的答案:思维逻辑:(1)(2)属于查找方面的优化、(3)(4)属于内容存放的优化、(5)属于关系型数据库本身的优化
(1)如果没有索引,数据库引擎需要通过全表扫描来提升查询效率,会产生大量的磁盘IO(让磁盘读或者写,从哪里读写)
(2)针对
查询范围和排序的优化
。在每个叶子节点保存其下一个叶子节点的指针,这样当指定范围查询时,先从根节点根据范围的左值找到其叶子节点,之后通过向后便利叶子节点即可找到对应范围右值这样可以加速范围查询、排序、分组等数据库查询动作。
(3)针对磁盘读写速度的优化。除叶子节点之外的其他节点只保存键值,这样对磁盘的单次读写可以获取到尽可能多的数据。
(4)叶子节点种除了key值也会存放数据,按照存放数据的不同索引可分为主索引和辅助索引。
主索引的叶子节点存放关键值对应的完整记录,使用主索引进行查找时,可以直接输出记录。
普通索引的叶子节点则存放对应关键的值,因此使用普通索引查找时,需要先找到主键值,然后再到主索引中查找。一个表可创建多个辅助索引。
(5)关系型数据库使用
B+查找树
来加速查询。(B+树是一种二叉查找树,每个节点的值比保存在左子树的任何键值z要大,比保存在右子树的任何键值要小),因此随机查找某个键值时可以通过根节点进行二叉查找来加速查询
**参考内容:**https://blog.csdn.net/qq_35456045/article/details/105299214

3.题目描述
【污水处理问题】一家污水处理厂通过去掉污水中有害的污物来净化水质,生产出用于灌溉使用的水源。该处理过程每小时可以去掉处理池中剩余污物的12%。
问:1.一天后处理池中将大概处理掉百分之几的污物?
2.要多长时间才能把污物的量减少一半?

我的答案:
1、假设一天工作8小时,并且在处理过程中污物不会再进入处理池,那么一天后处理池中剩余污物为 1*(1-12%)^8 ,
所以大概处理掉1-1*(1-12%)^8=64.37%
2、污水量减少一般,也就是污物处理要达到50%以上,即计算1*(1-12%)^x>=50%
x=5.43,所以至少要5.43h才能把污水处理量减少一半。

4.编程题。棋子翻
在4*4的棋盘上摆满了黑白棋子,黑白两色的位置和数目随机其中左上角坐标为(1,1),右下角坐标为(4,4),现在依次有一些翻转操作,要对一些给定支点坐标为中心的上下左右四个棋子的颜色进行翻转,请计算出翻转后的棋盘 颜色。

我的答案:
反思:将每次循环都要做的值替换单独定义一个函数;需考虑中心在第一行、最后一行、第一列、最后一列时,上下左右四个元素会缺少一部分

def getnum(i):
    if i == 0:
        return 1
    else:
        return 0
def chess(A,f):
    for i in f:
        row,col = i[0]-1,i[1]-1#翻转的点在矩阵中的坐标,因为矩阵中第一行在矩阵中坐标为0行
        if row > 0:
            A[row-1][col] = getnum(A[row-1][col])#矩阵索引-先确定行在确定列A[2][3],而不是A[2,3]
        if row < 3:
            A[row+1
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值