腾讯IEG 安卓一二+HR面面经(OC)
腾讯IEG面经(已OC)
5.22 更新一下
今天下午OC了
来还愿
祝各位同学都能收获好运!
一面(1小时)电话
5月13日晚上 一面:
腾讯提前批没来得及投递,所以第一次面腾讯,正式批26号笔试加起来A了3道题左右?(忘记了)一直泡着没动静,过了一个五一,本来觉得无望。
今天下午上join.qq.com看了一眼状态更新到初试,晚上就来电话了。
总体评价:首先面试官非常温柔,全程问问题也很有耐心,我一开始有点紧张没进入状态,他也会细致地问,慢慢引导,总体非常好评!
面试官上来问:看你成绩很不错啊 (但是还是在池子里泡了大半个月)
我比较紧张就说 嗯 /////
他就直接开始问:先问学了多久Android了?
我说:大一下进实验室 两年了
问基础
- 问计算机网络:讲下TCP、UDP区别;在浏览器输入百度然后回车之后的整个过程;(详细到协议层都发生了什么)
- 有没有用过Linux?文件权限?一个文件是chmod755表示什么?
- hashmap的实现原理 get的时间复杂度 如何优化冲突(改变数组长度、再哈希、链表优化为红黑树)
- ==和equal区别,hashcode何时需要被重写
- linux垃圾回收 互相引用的对象会被gc吗 怎么gc? (gc roots怎么确定?)
Android:
- handler原理;能否让message被push到非主线程的线程里?(提示looper)
- wait和sleep的区别?
- Activity、View、Surface、SurfaceView之间的联系?(问题很大,让我挑我知道的说) 我回答的方向:
- View和Actvity从属关系
- Activity包含ViewRoot(树状结构)
- Surface和SurfaceView为什么不需要重绘整个view树(独立Canvas
- TextureView(问这个是因为项目用了)和SurfaceView的区别(为什么SurfaceView不能旋转缩放平移 但是TextureView可以)
问项目(主要是做什么的,感兴趣的就继续深入下去,还讨论了未来的项目计划等等):
项目涉及到的点
- 压缩图像大小(YUV格式的440 422编码)
- 如何通信/选择什么传输方式实现无人机向设备传输数据
- 项目未来规划
反问。
5月14日晚上一面/交叉面(40分钟)电话
这一面应该是交叉面,因为官网状态并没有更新。
又是7点钟,同个部门的另一位大佬。
(这次回答的感觉有点不太好)
面试官人还是很好呜呜呜呜,属实感动。
这一面的面试官感觉蛮有气场的,不过听声音感觉蛮年轻的。
主要是基于项目问(穿插问基础,我稍微整理一下,问的比较零散,有的记不清楚了)
基础:(不太完整,穿插在项目里问的,只记得这两个)
- 如何找链表倒数第n个元素?快慢指针
- 一个数组插入删除查找和链表的效率对比?如果一个数组要反复插入删除怎么优化降低时间复杂度?(一开始没想到,面试官提示其实就是垃圾回收的算法 原理就是“标记-查找”。每次删除的时候元素不是真的被删除了,而是先标记,最后统一移动数组元素,减少移动次数)
项目:
项目里深度学习是自己实现的还是API
SurfaceView和TextureView的区别?(一面也问了)
了解过OpenGL么?
自定义View需要哪些步骤?(覆盖Draw、Layout、Measure)
问我是不是有C++基础?(学算法 数据结构用C++ 写项目主要是Java)
接着就开始问C++……我基本上没准备 直接裂开
问C++?C++11用过么?说下C++新特性?(就知道一个智能指针,问原理我真的不懂)
为什么C++调用C要使用extend?(我不知道,于是就想办法扯了JNI……我猜是类似于Java调用C++代码)
愿意转IOS开发么(坦白 有兴趣,但是一直没机会)聊到这边我跟面试官都笑了hhhh……一下就不紧张了
顺便主动提了一下Objective-C,于是 问我有没有了解过(我说看过一点,但是没怎么实践过)
问Android基础:
android怎么实现多进程通信:(这部分很早看过,忘得差不多了,答错了)
怎么做线程同步?(锁和violate)
Activity的启动方式?(三种 标准、栈顶复用模式、栈内复用模式)
Android动画了解么?用过没?(有多少种?)
JNI项目接触过没?
平时怎么学Android?
打算考研么?
写博客么?github
聊完之后就差不多了。让我等通知。
5月18日上午二面(30分钟)腾讯会议
回来还愿!状态更新辣!现在等通知嘻嘻
求一个HR面
早上9点钟的腾讯会议。
面试官很准时,好评。而且听声音有点耳熟。(?)
面试一开始就自我介绍,顺带讲一下自己熟悉的项目。
接下来就是围绕项目:
- WebView的性能优化(讲了腾讯开源的 VasSonic 框架、网页直出技术)
- 了解C++的Map么?怎么实现的?(讲了Java的);字符串和其他类型的数据做Key如何计算哈希值?(字符串可以使用ASCII码的值求和、或者BKDR等非聚合哈希算法)
- 有没有写过服务端?(知道如何并发get页面多个元素么?)
- 线程池设计的时候需要注意哪些事情?
中途面试官去处理了一些紧急的事情,等了一会之后回来了~
- 觉得Android有哪块技术是比较熟悉的?
- MVP设计模式?对比来看MVC有什么坏处?
- 可以实习多长时间?
(记不太清了,想到再补)
5月20日下午HR面(30分钟)电话
真就拖延症晚期了,面完快一天了才来更新,这也能拖更,我服了我自己了。
更新一下HR面:
基本上就是家常,到这一轮的话HR会考核你的稳定性,也就是看看你的意愿
- 简单介绍一下你的大学和生活
- 最有成就感的项目
- 怎么克服项目中的困难
- 平时如何学习的
- 有什么其他的爱好
- 身体健康吗(?)
- 有女朋友没
- 有考研打算么
- 部门业务了解过么(然后给我详细介绍了一会)
最后跟我说流程全部走完了,最快这周,最晚下周会有答复。(慌)
然后今天(5月21日)部门的一个前辈来加我微信问我啥时候过去,并且让我提前准备要学的东西,然而此时我还没接到oc……(前辈说在审批)
目前就这样