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

帅比萌擦擦* 提交于 2020-08-17 02:26:36

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

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.455052513

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]

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

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

#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_s

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 运维实战手册 云原生架构白皮书

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!