2015阿里巴巴招聘在线笔试试题_数据研发工程师
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、单选题
(1)设一组初始记录关键字序列为(4,1,7,6,3,2,5),则根据这些记录关键字构造的二叉排序树的平均查找长度约为_。
A.1.7
B.1.8
C.1.9
D.2.0
E.2.1
F.2.2
(2)已知int a[]={1,2,3,4,5};int*p[]={a,a+1,a+2,a+3};int**q=p;表达式*(p[0]+1)+**(q+2)的值是_。
A.5
B.6
C.7
D.8
E.4
F.9
(3)给定一个整数sum,从有N个无序元素的数组中寻找元素a、b、c、d,使得a+b+c+d=sum,最快的平均时间复杂度是_。
A.O(N^2)
B.O(logN)
C.O(N)
D.O(N^3)
E.O(N^2logN)
F.O(N^4)
(4)以下关于STL的描述中,_是错的。
A.STL容器是线程不安全的
B.当容量不够时,vector内部内存扩展方式是翻倍
C.std::sring中可以存储多个‘\0’字符
D.std::bitset不是一个STL容器
E.std::stack是用deque实现的
F.std::sort可能是不稳定排序
(5)设int a=1,x=2,执行语句a=x>1?5*x:(x=7);后,变量a和x的值分别是_。
A.a=1x=2
B.a=1x=10
C.a=5x=7
D.a=10x=2
E.a=10x=10
F.a=2x=10
(6)下面代码在64位Linux系统编译执行,输出结果是_。
#include
void func(){
static int b;
printf("%d",b);
}
int main(){
static int b=20;
func();
}
A.0
B.20
C.输出不确定
D.编译错误
E.运行出错
F.以上均不正确
(7)数字(100!)后面有_个0。
A.18
B.20
C.24
D.28
E.30
F.100
(8)订单orders的表结构如下,要统计出每日付款订单笔数、付款金额(单位:元)、付款人数、客单价(单位:元,客单价的定义是销售总额/买家总数)以及单笔最高金额(单位:元),下面SQL语句正确的是_。
SELECT buyer_date,_,_,_,_,_
FROM orders_buyer_date
A.count(*),sum(pay_amount),count(buyer_id),sum(pay_amount)/count(buyer_id),min
(pay_amount),group by
B.count(1),sum(pay_amount)/100,count(distinct buyer_id),sum(pay_amount)/count(distinct buyer_id)/100,max(pay_amount)/100,group by
C.count(order_no),sum(pay_amount)/100,count(buyer_id),sum(pay_amount)/count(buyer_id)/100, max(pay_amount)/100,group by
D.count(buyer_id),sum(pay_amount)/100,count(distinct buyer_id),avg(pay_amount)/100,max (pay_amount)/100,group by
(9)中国人口数量在10亿~20亿,如果用二进制记录人口数量,则至少需要_位的长度。
A.30
B.31
C.33
D.63
E.64
F.65
(10)以下程序存在的问题是_。
#include
using namespace std;
class cat
{
int age;
public;
cat()(age=1;)
~cat(){}
void miao(void){cout<<"Miao,my age="< } int main(void) { cat kitty; int*p=(int*)(&kitty); *p=20; kitty miao(); return0; } A.编译报错:error:'int cat age'is private B.运行报错:error:memory access denied C.程序正常运行,但输出莫名其妙的数值 (11)将整数序列(7-2-4-6-3-1-5)按所示顺序构建一棵二叉排序树(亦称二叉搜索树),之后将整数8按照二叉排序树规则插入树a中,请问插入之后的树a中序遍历结果是_。 A.1-2-3-4-5-6-7-8 B.7-2-1-4-3-6-5-8 C.1-3-5-2-4-6-7-8 D.1-3-5-6-4-2-8-7 E.7-2-8-1-4-3-6-5 F.5-6-3-4-1-2-7-8 (12)下列选项中,识别模式与其他不一样的是_。 A.用户年龄分布判断:少年、青年、中年、老年 B.医生给病人诊断发病类型 C.投递员分拣信件 D.消费者类型判断:高消费、一般消费、低消费 E.出行方式判断:步行、骑车、坐车 F.商家对商品分级 (13)以下使用了贪心算法的是_。 A.KMP算法 B.希尔排序算法 C.冒泡排序算法 D.Dijkstra算法 E.快速排序算法 F.Floyd算法 (14)图中每个圆圈是一个补给站,存储着一定数量的汽油(在圈中标识),每一个圈之间的路上标识了这段路需要消耗的汽油量,一辆小车从A点出发,在图上随意行走,到达某个补给站后,可以获得这个补给站的所有汽油,则其到B点后最多剩余的汽油量是_。