2016阿里(数据研发工程师)笔试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
阿里2016校招(数据研发工程师)笔试题
12、如果下列的公式成立:78+18=123,则采用的是_______进制表示的。
a.11
b.12
c.13
d.14
e.15
f.以上都不对
13、设一棵二叉树有3个叶子节点,有8个度为1的节点,则该二叉树中总的节点数为______。
a.12
b.13
c.14
d.15
e.16
f.17
14、考虑以下二分查找的代码:
对于输入array[]={2,6,8,10,13,25,36,45,53,76,88,100,127};n=13,v=127,运行bsearch函数,while 循环调用的次数。
15、Linux下两个进程可以同时打开同一个文件,这时如下描述错误的是:_______。
a.两个进程中分别产生生成两个独立的fd
b.两个进程可以任意对文件进行读写操作,操作系统并不保证写的原子性。
c.进程可以通过系统调用对文件进行加锁,从而实现对文件内容的保护
d.任何一个进程删除该文件时,另外一个进程会立即出现读写失败
e.两个进程可以分别读取文件的不同部分而不会相互影响
f.一个进程对文件长度和内容的修改另外一个进程会立即感知
16、下列java程序输出结果为______。
int i=0;
Integer j=new Integer(0);
System.out.println(i==j);
System.out.println(j.equal(i));
a.true,false
b.true,true
c.false,true
d.false,false
e.对于不同的环境结果不同
f.程序无法执行
17、在如下6*8的矩阵中,请计算A移动到B一共有_____种走法。要求每次只能向上或向右移动一格,并且不能经过P。
B
P
A
1456
2492
3568
4626
5680
6702
18、1,2,3……,49,50里选择一个集合S,使得x属于S,则S最多能有______个元素。
725
827
930
1033
1136
1237
19、现有1GB数据进行排序,计算资源只有1GB内存可用,下列排序方法中最可能出现性能问题的是_______。
1堆排序
2插入排序
3归并排序
4快速排序
5选择排序
6冒泡排序
20、一人以d元在淘宝买入n套《三体》,d为正整数,其中两套他以成本一半送给朋友,余下的每套高于原价8元卖出,加上送个朋友的两套,如果全部利润是72元,n最小可能是_______。
算法题:
1、蚂蚁金服的各种支付场景数据都是分散在很多业务系统的,为了方便研究者对用户支付行为进行分析,对蚂蚁业务数据进行了整合,具体表结构设计
如下:
订单表(orders),账户信息表(users)
1)"小明是以为大学生,于20157月1日他通过支付宝购余额宝1000块",请按照实体建模法,列举这个场景下面有哪些实体(Object)、关系(Link)、属性(property)。
2)请使用SQL语句,统计动态一年活跃账户的年龄特征分布情况。
动态一年活跃账户定义:订单表orders里,付款时间gmt_pay区间范围[2014-08-01,2015-08-01),付款一次则记一次活跃,且买卖双方均算活跃。
3)分析下申购余额宝用户的活跃场景数分布情况,以判断余额宝申购用户跟其它活跃场景的想关心,请用SQL将分析过程写下来。
申购余额宝:biz_type='余额宝',sub_biz_type='申购'
活跃场景数:按照biz_type,sub_biz_type作为场景区分
申购用户:orders buyer_id
申购时间:o r ders gmt_pay
2、小明在天猫开一个网店,某天要开展一个抽奖活动,奖品数量为100个,为了保证活动的公平,小明希望保证每个顾客中奖概率都一样,但他无法提前预估活动当天参加抽奖的顾客数。请你给他设计一个算法,要求:
1)在抽奖过程中,如果让所有顾客一直等待抽奖结果,否则顾客一直刷新导致网络拥塞,用户体验也很糟糕,因此只能容忍一小部分用户在活动进行过程中等待;
2)活动结束以后,必须立即给出中奖的100为顾客名单。
3、蚂蚁、阿里集团为了缓解大家的工作疲劳,合作和一家理疗按摩店,在各园区都提供了专门的大房间供理疗师工作。如果你是理疗店的老板,如何估算每个园区需要多少名理疗师?
提示:自行设置相关变量,如园区总人数,每个人需要按摩的时间等,叙述详细估算过程。