阿里达摩院 工程实习 一面
面试官先进行自我介绍(已经在阿里工作 8 年了),介绍了一下部门的情况,主要负责的业务,最后到我面的这个岗位,很详细,
自我介绍,
实习时间,实习经历
深挖项目,
http 和 tcp
http 有哪些版本
http 0.9(最早),http 1.0、http 1.1 (如今最广范)、http 2.0 (基于 SPDY)、http 3.0 (QUIC)
使用过 http 的那些头部,以及每个头部的作用
数据结构设计题
数据结构,设计一个 map 类,实现以下功能
key 是 String, value 是 String
String get(String key); 取出 key 对应的 val,不存在,返回空即可
void set(String key, String value); 将 key 对应的 val 返回
void setAll(String value); 将 所有的 val 设置为 value,
所有的操作的时间复杂度均在 O(1)
举例:
map.set("k1", "v1")
map.set("k2","v2")
map.set("k3", "v3")
map.get("k1") --> "v1"
map.get("k2") --> "v2"
map.get("k3") --> "v3"
map.setAll("v4")
map.get("k1") --> "v4"
map.get("k3") --> "v4"
map.set("k1", "k5")
map.get("k1") --> "k5" 试了好多次,最后面试官提示,使用版本号,
实习相关:
如果发生问题,如果确定问题是发生在前端还是后端,
如果确定问题是发生在后端,如果快速定位,
反问:
- 对于编程语言的学习,经典的书籍和新特性之间,如何做好一个平衡,
如果新特性不是必要,建议经典的书籍优先 - 希望给一些学习和工作上的建议
实习的时候做一个项目,可以花时间了解一下这个项目如何与其他项目一起协作,项目的应用场景,如果与其他业务实现交互
迄今为止,遇到的最牛逼的面试官,真的强,
#阿里巴巴##面试题目#