2021阿里春招实习面经汇总

面试部门:国际化中台

0412阿里国际化中台1面

  1. 讲项目
    a. 负责什么工作
    b. 项目的优势
  2. 做过java相关项目吗
  3. java内存分区
  4. java类加载
  5. 字符串存在内存哪里
  6. java有垃圾回收机制,它是否会内存泄露
  7. java属性的初始化顺序(默认初始值,无参构造函数,静态代码块,构造代码块)
    下面应该是正确的
    a. 非静态属性:默认初始化 → 显示初始化 → 代码块初始化 → 无参构造初始化 or 有参构造初始化
    b. 静态属性:默认初始化 → 显示初始化 → 静态代码块初始化 → 非静态代码块初始化 → 无参构造初始化 or 有参构造初始化
    h. Java权限修饰符
    i. 比较ArrayList与linkedlist
    j. 如何使他们线程安全(synchronized或Collections.synchronousList())
  8. Java IO把UTF8编码文件转为GBK
  9. TCP 三次握手
  10. HTTP 状态码
  11. HTTP与HTTPS的区别
  12. 数字证书扮演什么角色,起到什么作用,包含哪些信息
  13. 宽带访问HTTPS站点,弹出广告,是HTTPS劫持吗,怎么做到的
  14. 什么是session和cookie
  15. HTTP是无状态的,如何得知多个请求是否来自同一用户,如何争取取出同一用户的session
  16. 选择排序如何实现,时间复杂度
  17. 哪种时间复杂度更优,说说原理
  18. 递归与非递归(使用栈)如何实现先序遍历二叉树
  19. 导航,从出发地到目的地,找最短路径(迪杰斯特拉算法或佛洛依德算法),讲讲原理
  20. Linux操作系统用过吗,数据库了解吗
  21. 掌握比较好的 → java并发
    a. 乐观锁与悲观锁
    b. 可重入锁
    c. sleep释放锁吗(不),wait释放锁吗(是)
    d. sleep释放CPU资源吗(是的),wait也释放
  22. 线程池有哪些重要参数,什么含义
    实操:corePoolSize 10,,maximumPoolSize 20,workQueue 100
    • 提交5个任务,有几个线程
    • 提交12个任务,有几个线程
    • 提交110个任务,有几个线程(10个运行,100个等待,待学习)
    • 如果是无限队列,比如LinkedBlockingQueue,会如何

0415阿里国际化中台2面

  1. 自我介绍
  2. 研究生阶段学习了哪些课程
  3. 自学了哪些计算机技术、读过哪些书籍
  4. 对哪些数据结构掌握得比较好,介绍下实现场景
  5. 介绍下TreeMap
  6. 介绍下ConcurrentHashMap
  7. 系统地介绍一下java中的锁
  8. B+树什么原理,应用场景
  9. 图了解吗
  10. 线程有哪些状态
  11. sleep与wait的区别
  12. 学习过哪些算法,哪些算法掌握比较好
  13. 贪心算法与背包算法
  14. 常见的排序算法
    快速排序与堆排序思路,各自空间复杂度与时间复杂度
  15. 手撕题目
    • topK, LRU
    • 字符串在文本中出现的次数 -> KMP
  16. TCP三次握手
  17. HTTPS如何保证数据传输的安全性
  18. 项目相关
    担任什么角色,有什么亮点
  19. 竞赛相关
    数模担任什么角色
  20. 开源项目,技术框架是否学习过
  21. 计算机知识学习了多长时间
  22. 为什么选择计算机

0419阿里国际化中台3面

  1. 学过哪些课程
    a. 为什么研究生成绩比本科成绩有下滑
  2. 项目相关
    a. 实验室主要在做什么实践项目
    i. 怎么理解项目中的创新点与思路
    ii. 为什么要用区块链做,有什么好处
    b. 研究有什么具体应用吗
    c. 在项目中的分工是怎么样的
    d. 项目具体是怎么实现的
  3. 竞赛相关
    a. 竞赛结果不理想,自我分析原因是为什么呢
    b. 自认为哪个竞赛含金量高,为什么
    c. 竞赛做的什么题目
  4. 最近学到的技术是什么(java并发)
    a. 了解reentrantlock和blockingqueue吗
    b. 对比synchronized与reentrantlock实现机理
    i. 有过具体应用吗,在哪些场景下
    c. wait, notify, notifyAll有了解吗
    i. 它们的使用有什么注意事项吗
    ii. 为什么wait必须写在同步块或同步方法里
  5. wait()一定要使用sycronized进行同步,否则会报“java.lang.IllegalMonitorStateException”异常。这是因为wait方法会释放对象锁,而此时因为没有用sycronized同步,就没有锁,就会报异常。
  6. 有针对未来工作准备什么事情吗
  7. 有在面试其他公司吗
  8. 有拿到其他公司offer吗,会如何在阿里和其他公司做选择
#实习##面经##Java工程师#
全部评论
😅好bt,tql
点赞 回复 分享
发布于 2021-06-17 11:12
楼主优秀~
点赞 回复 分享
发布于 2021-06-15 18:31

相关推荐

对于C++开发者来说,找工作绕不开的就是“八股题”:数据结构、算法、C++基础、操作系统、计算机网络……很多人都会问:“这些题我要背到什么程度?”我的经验是:有一个原则——如果时间充裕,尽可能详细理解原理;如果时间紧迫,可以适当死记硬背,但重点是能应用。1. C++编程语言C++面试重点往往在内存管理和对象模型:指针、引用、深浅拷贝、堆栈分配、内存泄漏构造函数、析构函数、拷贝/移动构造、虚函数、虚表RAII与智能指针(unique_ptr、shared_ptr)STL容器和算法(vector、map、unordered_map、sort、lower_bound)如果时间充裕,要画图理解内存布局、写代码验证行为,真正掌握原理;如果时间紧迫,可以先背一些典型例题,但遇到面试问题仍需能写代码和讲解原理。2. 数据结构与算法C++岗位常考:数据结构:数组、链表、栈、队列、哈希表、树、图算法:排序、搜索、递归、动态规划、贪心STL应用:熟练使用容器和算法,提高编码效率核心思路是理解解题套路:链表用dummy node,树递归先定边界,动态规划先想状态转移方程。充裕时间可以把各种题目亲手刷一遍,理解原理;时间紧迫,可以适当记忆常用模板和代码结构。3. 操作系统面试常考操作系统知识:进程和线程、同步机制(mutex、condition_variable)内存管理(栈、堆、虚拟内存)IO模型(阻塞IO、非阻塞IO、epoll)死锁与锁粒度原理理解越透彻,写高性能程序越得心应手;时间有限时,至少熟悉概念、常见面试问法和解决思路。4. 计算机网络网络知识主要考原理和常见场景:TCP/UDP三次握手、四次挥手、拥塞控制HTTP/HTTPS请求响应流程、状态码Socket编程基础理解原理有助于分析问题和优化程序;时间紧迫时,背一些常用面试问答也能应付大部分基础题。5. 总结原则理解优先:时间充裕时,尽可能深入理解原理、画图、写代码死记可辅助:时间紧迫时,可以适当背题和模板,保证能写出代码动手能力是核心:能写、能讲、能拓展应用比单纯背题重要知识面宽度和深度平衡:C++语言、数据结构、操作系统、网络,核心点吃透即可
找工作八股要背到什么程度...
点赞 评论 收藏
分享
评论
11
78
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务