2020阿里巴巴笔试真题(含答案)


1.假设能够不考虑计算机运行资源(如内存)的限制,如下 python3 代码的预期运行结果是:()java

import math
def sieve(size):
    sieve= [True] * size
    sieve[0] = False
    sieve[1] = False
    for i in range(2, int(math.sqrt(size)) + 1):
        k= i * 2
        while k < size:
           sieve[k] = False
           k += i
    return sum(1 for x in sieve if x)
print(sieve(10000000000))

A.455052510
B.455052511
C.455052512
D.455052513python

2.连接:一维离散卷积的定义是:

给定一维数组 a = [1, 2, 3], v = [4, 5, 6],它们的离散卷积结果是:()
A.[6,12, 32, 27, 12]
B.[4, 13, 28, 24, 18]
C.[4, 13, 28, 27, 18]
D.[6, 12, 32, 24, 12]linux

3.李主任在早上8点30分上班以后参加了一个会议,会议开始时发现其手表的时针和分针呈120度角,而上午会议结束时发现手表的时针和分针呈180度角。问在该会议举行的过程当中,李主任的手表时针与分针呈90度角的状况最多可能出现几回?
A.4
B.5
C.6
D.7数据库

4.下面代码在64位Linux系统编译执行,输出结果是____。apache

#include <stdint.h> 
#include <stdio.h> 
void print_size(int32_t array[10]){ 
 printf("%d\n", sizeof(array)); 
} 
int main () { 
 int32_t myArray[10]; 
 printf("%d ", sizeof(myArray)); 
 print_size(myArray); 
}

A.20 4
B.40 4
C.80 4
D.40 8
E.80 8
F.以上均不正确数组

5.天猫双十一有个积分换墨盒的活动,总共有50万台天猫魔盒(box),每一个用户(user)能够用99个天猫积分(point)兑换一台魔盒,且每人限换一台。 请设计一套java接口并实现下单(order)逻辑。 参考(但不局限于)下面的下单逻辑:
(1)建立订单
(2)扣减用户积分
(3)扣减魔盒库存
(4)下单成功
同时请回答:
(1)数据库表结构如何设计,有哪些表,分别有什么做用?
(2)下单过程当中哪些地方可能成为瓶颈?如何解决或改善?
(3)是否会用到数据库事务,哪些地方会用到?若是不用数据库事务,如何保证数据的一致性?服务器

6.下面的函数哪一个是系统调用而不是库函数()?
A.printf
B.scanf
C.fgetc
D.read
E.print_s
F.scan_ssession

7.下列关于线程调度的叙述中,错误的是()。
A.调用线程的sleep()方法,能够使比当前线程优先级低的线程得到运行机会
B.调用线程的yeild()方法,只会使与当前线程相同优先级的线程得到运行机会
C.当有比当前线程的优先级高的线程出现时,高优先级线程将抢占CPU并运行
D.一个线程因为某些缘由进入阻塞状态,会放弃CPU
E.具备相同优先级的多个线程的调度必定是分时的
F.分时调度模型是让全部线程轮流得到CPU使用权架构

8.若基于Linux操做系统所开发的ARM应用程序源文件名为test.c,那么要生成该程序代码的调试信息,编译时使用的GCC命令正确的是?
A.arm-linux-gcc -c -o test.o test.c
B.arm-linux-gcc -S -o test.o test.c
C.arm-linux-gcc -o test test.c
D.arm-linux-gcc -g -o test test.c运维

9.要在session对象中保存属性,能够使用如下哪一个语句( )
A.session.getAttribute(“key”,”value”)
B.session.setAttribute(“key”,”value”)
C.session.setAttribute(“key”)
D.session.getAttribute(“key”)

10.apache服务器的启动脚本apachectl不能完成( )功能
A.启动httpd服务程序
B.中止httpd服务程序
C.检测httpd.conf配置文件的语法
D.卸载apache服务器程序


1.正确答案:B

2.正确答案:C

3.正确答案:A

4.正确答案:D

5.参考答案:(1)数据库表一共须要设计3个,分别是:用户表、魔盒表、兑换表,
用户表字段分别为:用户ID,用户名,用户积分,该表用来记录全部用户信息
魔盒表字段分别为:魔盒ID,磨合兑换所需积分,该表用来记录全部魔盒信息
兑换表字段分别为:用户ID,魔盒ID,兑换时间,兑换所花积分数等,该表用来记录全部用户兑换魔盒的信息
(2)有可能成为瓶颈:1.兑换活动刚开始的时间段内访问用户量过大,服务器压力较大 2.兑换过程当中兑换表中记录的更新及同步,须要知足时效性
(3)会用到数据库事务,好比说用户兑换后积分的变化,兑换过程当中库存魔盒数量的及时更新,若是兑换不成功,须要及时回滚
设计数据库访问的锁机制,保证数据的一致性

6.正确答案:D

7.正确答案:B、C、E

8.正确答案:D

9.正确答案:B

10.正确答案:D

※更多文章和资料|点击后方文字直达 ↓↓↓
100GPython自学资料包
阿里云K8s实战手册
[阿里云CDN排坑指南]CDN
ECS运维指南
DevOps实践手册
Hadoop大数据实战手册
Knative云原生应用开发指南
OSS 运维实战手册
云原生架构白皮书

相关文章
相关标签/搜索