阿里后端暑期实习凉凉面经(一面)

211本硕 实验室用C/C++不用java 自学半年左右  面试时长70分钟 部门好像是支付宝

1.c++和java的区别是什么,有何优劣

2.数据库的加密和安全性(啊啊啊我没复习这个 胡说一通)

3.讲讲netty(扯了点NIO的原理)

4.讲讲select/poll/epoll的区别(扯了一下他们的数据结构)

5.java中list和set的区别(有序,无序,可重复,不可重复)

6.set的底层数据结构(真的不会,愣了一会以后猜了个红黑树,好像猜对了,不过面试官好像看出来我是猜的……然后呵呵一笑)

7.set的继承接口和子类(狂问set……)

8.hashmap的底层数据结构

9.哈希冲突时解决方案(我说了一个链表一个再哈希)

10.链表解决法和再哈希法的时间复杂度分别是多少(链表应该是O(1),再哈希我说了个O(n))

11.synchronized锁的用法和几个特征(没答全)

12.synchronized锁是如何被抢占(这个至少应该说个interrupt )

13.公平锁和非公平锁的区别

14.redis的内存淘汰机制(太尴尬,把lru说成lau 被面试官实力纠正了一波 菜!!!)

15.讲讲线程池的几个参数(核心线程,任务队列,最大线程,然后我把增长策略扯了一会)

16.当负载逐渐降下来以后线程池的运行机制(没答上来 高并发这部分真的是太菜了)

17.平常会用什么垃圾回收器(我说了个单线程serial,面试官表示很惊讶hhh)

18.聊各种垃圾回收器(这个应该全说对了,但是我忘了parallel scavenge这俩单词 直接给他说简称ps收集器hhh,然后我说G1是1.7新出的收集器被面试官实力纠正:“是java8”)

以上共耗时45分钟

接下来是手撕代码 题比较简单

先是倒置一个数字 考虑正负号(-123---->-321) 以前做过 直接写

然后扩展,如果加了小数点该怎么办

我的方案是转字符串 然后split 然后字符串逆置 最后也撕出来了

手撕代码耗时大概20分钟

然后就闲聊了一会 结束 应该是凉了 主要崩在高并发 因为这部分确实学的不深而且缺乏实践经验 而且因为是人生第一次面试大厂 所以过于紧张

一些会的也没说出来 希望以后可以稍微从容一点吧呜呜呜

#阿里巴巴##实习##面经##校招#
全部评论
老哥怎么把这么多面题记下来的啊 是有录屏/录音吗? 感觉你记得很全啊hhh
点赞 回复 分享
发布于 2020-05-27 10:37
凉了嘛我觉得很棒哇!
点赞 回复 分享
发布于 2020-03-11 11:54
答主已经很厉害了
点赞 回复 分享
发布于 2020-03-10 22:06

相关推荐

01-16 14:47
已编辑
宁波诺丁汉大学 Web前端
发发面经积好运感觉这一次面试涵盖了前端大部分的八股了实习期间主要做了哪些事情?你是如何与产品和后端对接的?你在项目中主要使用 Vue 3 + TypeScript,那你觉得 Vue 开发中的“最佳实践”是什么?你刚刚也有提到“业务组件设计”,那你总结的组件拆分原则是什么?如果一个组件内部代码超过 200 行甚至上千行,但全是内部逻辑,是否还应该拆分?你怎么判断?你在 Vue 中是否会把组件拆得很细?拆分的边界在哪里?监控主要上报哪些类型的数据?是性能指标、错误日志,还是业务行为?具体监控了哪些性能指标?你是否了解 unhandledrejection 事件?知道如何监听 Promise 异常吗?如果让你自己实现一个前端的错误监控,你会怎么做?你提到做过性能优化,具体是从哪些方向入手的?你说有些页面内存占用高达 1.2GB,是怎么发现和定位内存泄漏的?你排查出的主要内存泄漏原因有哪些?你觉得常见的内存泄露都是什么原因导致的?除了你们项目中的问题,你还了解前端常见的其他内存泄漏场景吗?你是如何判断“合适的时机”去清理缓存的?你说对 TypeScript 比较熟练,那了解泛型(Generics)和工具类型(Utility Types)吗?在腾讯的项目中,团队是否强制使用泛型?你们常用哪些工具类型?你用过 Pick、Omit、Partial、Record 工具类型吗?有没有自定义过高级类型?你了解“依赖注入”这个概念吗?你在校内项目中用 WebSocket 替代了长轮询,为什么做这个技术选型?你是如何实现断线重连机制的?断线期间丢失的数据,是如何同步回来的?是通过记录断开时间戳,让后端返回这段时间内的增量数据吗?你能解释一下 JavaScript 的事件循环(Event Loop)吗?宏任务(Macro Task)和微任务(Micro Task)的执行顺序是怎样的?比如 setTimeout、Promise.then、queueMicrotask 的执行先后?UI 渲染发生在事件循环的哪个阶段?是在宏任务之后吗?渲染会阻塞 JS 主线程吗?或者说,JS 执行会阻塞渲染吗?你知道 Promise.all 和 Promise.allSettled 的区别吗?请手写实现一个 Promise.allSettled 方法。需要处理所有 Promise 的 settled 状态(fulfilled / rejected)返回格式是否符合规范?你刚才代码里用了 fulfilled 和 rejected 字段,这是参考了什么规范?(暗示 Promise A+ 或 ES 规范)你了解 Promise A+ 规范吗?感觉问得比较多和杂,我基础也确实不算很好,有不少都没答上。甚至没有考我算法题
nlhxq🌱:哥,你怎么还在找实习啊
实习与准备秋招该如何平衡
点赞 评论 收藏
分享
评论
5
34
分享

创作者周榜

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