腾讯Android开发面试记录,android面试宝典pdf

###3.25 19:40 二轮面试 - 视频面 ,40分钟
(3.25 9:15 打电话确认时间

我真的是,差点自己错过面试机会。面试通知是通过微信公众号的方式推送给我的,在这里面并没有面试链接,我以为到时间会再有推送,结果什么都没有。19:45面试官给我打电话,问我为什么没有进入考场,我说我不知道地址在哪。o(╥﹏╥)o被自己蠢哭了。面试官说那就用qq视频吧,然后开了一个qq共享文档。其实会在邮箱里面有面试地址,请留意。

**Q1:**写一段会造成死锁的代码。
**A:**写。

**Q2:**写一个重排列的算法,返回一个与输入最接近的、并且比它大的结果,没有就返回-1,输入为字符串,输出为整型。如输入“1234”,应返回1243,输入“4321”,返回-1。
**A:**写。
**Q:**从代码健壮性的角度,会不会有什么异常。
**A:**String转Int,substring等。

**Q3:**想一个问题,假如有一个表情库,每个表情都有名字(字符串表示),用户每次输入需要与库中某一表情名字完全匹配才向服务器请求相应的表情。如何存储这个表情名字库?
**A:**我比较想用一个数组存每个字的笔画数,匹配的上,再匹配两个String是否相等。
**Q:**为什么不用HashMap呢?是怕有陷阱吗?
**A:**啊,不是。我没想到HashMap。
Q:(笑)那你想想能不能用HashMap呢?
**A:**如果多线程可能会有线程不安全的问题。
**Q:**如果确定是在单线程呢?
**A:**应该可以。
**Q:**那它的内存占用情况是怎样的?
**A:**要量化到具体单位这种吗?
**Q:**不用,就是可能引起怎样的内存问题?
**A:**可能刚超过一点,内存就要翻倍。
**Q:**怎么优化呢?
**A:**优化哈希碰撞的算法,提高载入因子。
**Q:**还有什么呢?存储的名字怎么优化呢?
**A:**想了一会没想出来,encode处理?
Q:其实常用的就那么些字,Unicode编码范围很广,我们可以对常用的汉字进行重新编码存储。

**Q4:**还有什么要问我的问题吗?
**A:**没有了。谢谢,辛苦了。

###3.26 19:30 三轮面试 - 视频面,2小时… …
(没有电话确认,3.26 14:18 直接公众号推送

19:40面试官还没有进来,给总部打电话确认,刚接通面试官就进来了,说刚才有点事耽搁了,表示抱歉,就开始面试了。

**Q1:**简单介绍一下你做过的项目吧。
**A:**介绍。
**Q:**你上一个公司在深圳也有分部啊,你实习那么久了怎么没有留下来。
**A:**在上一个公司收获真的非常多,但还是想试试。
**Q:**行吧,就是想试试看是吧,好,先开始吧。

**Q2Q3Q4:**与一面Q3、Q6、Q7类似
**A:**回答也类似
但被微怼
你这个网上都能查到资料
这个网上没说,但官方文档里面总有吧?
为什么要用微信资源压缩?gradle配置里面不是有自带的吗?
图片压缩有具体的标准吗?你那些不都是经验值吗?

**Q5:**图片缓存怎么做?
**A:**三级缓存。(具体的三级说了一下)

**Q6:**内存级别缓存多少比较合适?
**A:**几十兆?
**Q:**为什么?不同手机这个值一样吗?
**A:**不一样。又是经验值。o(╥﹏╥)o

**Q7:**每个线程都可以创建Handler吗?
**A:**主线程可以直接创建,子线程要先创建Looper。
**Q:**Looper是干什么的?
**A:**从MessageQueue里面循环取消息,交给Handler进行处理的。
(这是唯一一个答完没有被怼的题啊,我一个暴哭)

**Q8:**了解常用设计模式吗?
**A:**常用的就是Builder、单例和Adapter。
**Q:**什么时候用Builder?好处是什么?
**A:**构造参数特别多、又非必须的时候,提升代码友好度。
**Q:**Adapter怎么用的?
**A:**常用的是数据的处理,还有平时的RecyclerView里面也用到了这个模式。

**Q9:**有什么我没问到的,但你觉得挺有挑战的事吗?
**A:**apk瘦身那次,我本来什么都不懂,后来慢慢学习,(强调自己很刻苦balabala的)终于完成了。
**Q:**这也没什么啊(小声嘟囔)
A:(⊙x⊙;) 行

**Q10:**写一个题,牛客网的环境。小明发现了一个自增数组,就是说每次操作能让数组中的一个元素+1,问至少操作多少次,可以让数组中的每个元素不一样?输入为两行,第一行代表数组长度,第二行代表数组中每个元素的值。数组中值的范围为-10000<=X<=10000。
如输入
5
1 2 3 2 5
应输出
2
**A:**思路是先排序,遇到与前一个数字一样的,边+1边后移,找到第一个大于该值的就插入,期间的元素依次左移。
**Q:**行,写吧。
**A:**有的用例对,有的不对。
找bug,面试官跟着一起找。
**Q:**其实没必要排序,可以用HashMap做。你还要把你的代码写完吗?
写,找bug,改,还是没出来。。。
**A:**我可以试试您说的方法吗?
**Q:**想清楚就可以写。
**A:**写。
运行,对了。
**Q:**行吧,其实输入格式还有点问题,但时间差不多了,回去多写写代码吧。可能也是这个环境没法调试,所以改起来不好改。
**A:**好

**Q11:**你现在是在北京上学吗?为什么要来深圳?
**A:**是我和我男朋友讨论之后共同决定的。
**Q:**哦,男朋友在这边是吗,行吧。那今天先到这里吧。
**A:**好的,谢谢,再见。

###3.29 18:27 HR面 - 电话面,15分钟
(没有电话确认,没有公众号推送

那天北京风嗷嗷的刮,我走在学校主干道上。

**HR:**自我介绍了之后问,现在方便吗?
**A:**方便。

**HR:**可以做个自我介绍吗?包括教育经历、校园经历、实习经历、参加大赛情况和家庭情况。
**A:**好的。
(刚说两句… 大风还是嗖嗖的)

**HR:**同学,你那边有点吵。
**A:**不好意思,我这边风确实有点大。我马上就走到实验室了,您可以10分钟之后打来吗?

**HR:**好的,稍后联系。
(15分钟后,电话再次响起)

**HR:**你好,现在可以了吗?
**A:**可以了,刚才不好意思。

**HR:**好,那还是请你先自我介绍。
**A:**介绍。

**HR:**家里还有兄弟姐妹吗?
**A:**没有,是独生子女。

**HR:**哦,那我看你家庭和学校都在北方,不留在北京,来深圳没问题吗?
**A:**嗯,我觉得北京和深圳对我来说都一样,但是我和我男朋友之后都会在深圳发展。

**HR:**男朋友也是一届的同学吗?
**A:**比我大一届,他已经在深圳了。

**HR:**不会是我们公司吧?
**A:**是的。

**HR:**啊,我就随口一问,他是哪个BG的呢?
**A:**xBG。(反正和我面的不是一个)

**HR:**那什么时候能来实习呢?
**A:**7月-8月。
**HR:**坦白讲,你的实习时间有点短,来了之后还有培养周期。包括后面能否转正肯定也会参考,还是希望早些来。不过主要肯定还是看个人能力和产出。
**A:**我明白您说的。我能保证的是7月入职,如果可以,肯定也想尽早。

**HR:**好的,那我这边也说一下。专业面和HR这边面试反馈都还是不错的,一周之内会给到offer。还有什么其他问题吗?

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
img

最后

其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。

下面分享的腾讯、头条、阿里、美团、字节跳动等公司2019-2021年的高频面试题全套解析,博主还把这些技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,下面只是以图片的形式给大家展示一部分。

image

知识不体系?这里还有整理出来的Android进阶学习的思维脑图,给大家参考一个方向。

image

期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,下面只是以图片的形式给大家展示一部分。

[外链图片转存中…(img-ft6rchqT-1712033802540)]

知识不体系?这里还有整理出来的Android进阶学习的思维脑图,给大家参考一个方向。

[外链图片转存中…(img-D7Uu0AL5-1712033802541)]

本文已被CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》收录

  • 10
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值