博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于阿里开发者招聘节 |这5道笔试真题 你会吗!???
阅读量:5902 次
发布时间:2019-06-19

本文共 2091 字,大约阅读时间需要 6 分钟。

摘要: 阿里巴巴资深技术专家们结合多年的工作、面试经验总结提炼而成的笔试真题这一次将陆续放出(面试题答案将在专辑分享结束后统一汇总分享)。并通过这些笔试真题开放阿里巴巴工作机会,让更多的开发者加入到阿里这个大平台。

面试,如同玩一场饥饿游戏:既要对环境了然于胸,又要对自身心知肚明。发现一个好工作不容易,但成功应聘又会面临一系列的挑战。

这一次,不仅是知识的收获,还将间接地与技术大牛们做了直观的沟通,了解他们的出题思路与考察要点,并加以消化吸收,这对自己技术能力本身就是一种极大的提升。走上编程之路,不断丰富自己方能与世接轨,努力做最优秀的自己。

 

01.如何实现一个高效的单向链表逆序输出?

阿里巴巴出题专家:游亮

阿里云弹性人工智能负责人,带领团队研发了同时支持Tensorflow、MXNET、PyTorch、Caffe的Perseus加速框架,曾获得Dawnbench推理世界竞赛的性能第一和成本最低双料冠军。曾任阿里云弹性高性能计算、超级计算集群技术架构师,获得过多项专利,拥有10年以上AI技术研发和高性能优化经验。精通针对CPU、GPU、MIC等微架构的计算性能优化以及网络、存储等系统性能优化。曾在英特尔SSG部门工作,并获得过英特尔中国最高成就奖(ICA)。

 

02.已知sqrt(2)约等于1.414,要求不用数学库,求sqrt(2)精确到小数点后10位

考察点:

基础算法的灵活应用能力(二分法学过数据结构的同学都知道,但不一定往这个方向考虑;如果

学过数值计算的同学,应该还要能想到牛顿迭代法并解释清楚)
退出条件设计

  1. 给定一个二叉搜索树(BST),找到树中第K小的节点
    考察点:

基础数据结构的理解和编码能力

递归使用
示例
如下图,输入K=3, 输出节点值3

关于阿里开发者招聘节 |这5道笔试真题 你会吗!???

说明

保证输入的K满足1<=K<=(节点数目)

04.LRU缓存机制

设计和实现一个 LRU(最近最少使用)缓存 数据结构,使它应该支持以下操作: get 和 put 。
get(key) ‑ 如果key存在于缓存中,则获取key的value(总是正数),否则返回 ‑1。 put(key,
value) ‑ 如果key不存在,请设置或插入value。当缓存达到其容量时,它应该在插入新项目之前使
最近最少使用的项目作废。

案例:

LRUCache cache = new LRUCache( 2 / 容量 / );

cache.put(1, 1);

cache.put(2, 2);
cache.get(1); // 返回 1
cache.put(3, 3); // 该操作,会将 key 2 作废
cache.get(2); // 返回 ‑1 (结果不存在)
cache.put(4, 4); // 该操作,会将 key 1 作废
cache.get(1); // 返回 ‑1 (结果不存在)
cache.get(3); // 返回 3
cache.get(4); // 返回 4

测试用例: s = [["put","put","get","put","get","put","get","get","get"],[[1,1],[2,2],[1],[3,3],[2],

[4,4],[1],[3],[4]]]

考察点:

对LRU实现的基本原理和数据结构的理解。

阿里巴巴出题专家:文景

阿里云CDN资深技术专家,浙大硕士,在高性能服务端产品开发、稳定性、服务质量优化及成本优化等各项功能都有10年以上的经验。在网易杭州研究院负责底层开源软件研发,国内最早核心Nginx研发人员之一,曾任tengine研发负责人,热衷于参与开源项目。

现在是CDN技术负责人,连续7年服务双11,保障整个阿里集团95%以上的流量分发稳定性。从2014年开始,从0到1构建阿里云CDN的商业化基础设施,包括点播、直播、动态、安全加速等各项产品线,阿里云CDN现在是中国用户数最多的CDN、也是国内规模最大的CDN。正在将CDN打造成互联网的基础设施,为全球用户提供接入、加速、安全的稳定服务。

 

05.关于epoll和select的区别,哪些说法是正确的?(多选)
A. epoll和select都是I/O多路复用的技术,都可以实现同时监听多个I/O事件的状态

B. epoll相比select效率更高,主要是基于其操作系统支持的I/O事件通知机制,而select是基于轮询机制

C. epoll支持水平触发和边沿触发两种模式

D. select能并行支持I/O比较小,且无法修改

阿里巴巴出题专家:寈峰

阿里技术专家,阿里巴巴百年技术大学讲师,Apache RocketMQ Committer,Linux OpenMessaging Advisory Board Member,具有多年分布式消息系统等中间件架构设计及研发经验,对云计算及分布式系统架构有深刻理解。目前负责Apache RocketMQ的研发及社区生态。

转载于:https://blog.51cto.com/14207296/2386883

你可能感兴趣的文章
页面自动刷新
查看>>
No free lunch in search and optimization
查看>>
分析 Spring 的编程式事务管理及声明式事务管理(转)
查看>>
网站优化和竞价有什么区别
查看>>
MySQL开源热备工具XtraBackup的原理与程序说明
查看>>
InnoDB: Error: innodb_table_stats not found索引表没找到,主从停止
查看>>
mongoDB(1):windows下安装mongoDB(解压缩版)
查看>>
CentOS修改主机名
查看>>
php 5.3.6中php-fpm 配置
查看>>
XMPP协议分析-原理篇
查看>>
centos7常用操作
查看>>
Sysprep工具封装系统
查看>>
系统集成资质培训 - 新书发布
查看>>
都是内存惹的祸
查看>>
Ubuntu解决RTNETLINK answers: File exists
查看>>
loadrunner教程及常见问题汇总(二)
查看>>
iOS GCD的常见功能的封装
查看>>
You must restart adb and Eclipse.
查看>>
ecshop中调用语言切换,实现多国语言
查看>>
mac10.9.5 php5.4.45安装composer 简记
查看>>