阿里暑期实习测开一面面经
阿里测开一面
闲聊
1. 你专业是通信相关,为什么想要来互联网。读研有没有考虑换成CS,是考研还是保研?
2. 你研究的课题是业内没有的技术吗?为什么要研究这个课题?
3. 你觉得你比CS专业的同学优势在哪儿?
(简历补充一下:在做项目以及科研中遇到什么困难,怎么解决的。软实力很重要)
4. 你之前代码写得多吗?力扣刷了多少道题(145道)(提到了笔试的题)
正式内容
1. 操作系统 讲一讲对进程和线程的理解 线程间通信方式,两个线程怎么通信(涉及并发,没说出来) 进程间通信方式
2. 虚拟地址和逻辑地址都是什么,区别是什么
3. 什么是DNS域名系统
4. 数据库 索引是用来干什么的
5. 索引为什么可以提供快速查找(索引通过事先排序方便查找,用空间换时间)
6. 为什么索引用B+树
7. 联表 什么是左连接和右连接,对应什么关键字(LEFT JOIN)
8. 怎么查找两个表的交集(没说出来)
9. Linux有用过吗?Linux指令有学过吗?常用的终端命令还是要会的。
10. 为什么要做聊天室的项目,介绍一下这几个概念
11. 你知道的排序算法有哪些,说说快排的思想,稳不稳定(不稳定),时间复杂度?
12. 讲一下HashMap,是线程安全的吗?如果想在并发场景使用的话要怎么办?什么是分段锁你了解吗?你提到的概念都知道吗?
Java什么时候要用动态扩容?(装载因子0.75)
散列表默认大小多少?(16)
第一次扩容在什么时候(12)
13. 实操题:有一个文本文件,里面有很多行,每一行是一个单词,需要统计出现最频繁的前10个。这个文件很大,怎么办?(大到一定程度,没法把文件中所有内容读进内存)大文件做不了一件事,第一反应是做什么?(拆成小文件)
答案:把大的哈希表分成几千个小表装,然后分别统计最频繁的前十个,再把统计出来的集中起来统计。
14. 快排或者手撕一道题(共享屏幕)class首字母大写,方法首字母小写
#面经##阿里巴巴##测试开发工程师##实习#