记一次阿里面试总结

本文记录了作者在阿里面试的全过程,从一面的电话面,包括在线算法题和Android基础知识,到二面的现场群面,再到三面CTO的电话面。面试中涉及了多线程、自定义View、性能优化等Android核心知识点,以及设计模式和项目经验的深入探讨。作者反思了面试中对算法的准备不足,对某一领域的深入研究,设计模式的理解和项目掌握程度,并强调了面试时保持自信的重要性。
摘要由CSDN通过智能技术生成

一面,电话面:

大概早上9点左右,收到了阿里HR的小姐姐的电话,声音很好听,虽然后面不怎么管我了...跟她约了晚上9点的电话面..然后一整天上班不在状态,开始各种回顾之前准备的知识.为了这次面试大概准备了半个月,利用每天下班到家8点到凌晨1点30的时间,疯狂的补充自己的技术栈.感觉进步飞快.

面试从晚上的8点开始,面试官要求在线做一道算法.不巧的是,我的电脑在不久前刚刚坏掉,所以没办法,只能找了楼下一家最近的网咖,找了个相对的安静的包厢(后来还是很吵~~).

算法题是:

给出一个无序的整形数组,给定一个 target value ,要求找出数组中连续元素相加之和等于target value的元素集合.找出元素下标之和最小的即可.

乍一看题目没有想象中难,大概是因为我面的是P6.稍微整理了一下(中间思路很多,所以有点乱),在网页上(阿里有一个在线的网页)开始敲代码.问了面试官有没有编译环境,面试官说用人脑编译一下吧. ~.~

题目不难,从头开始遍历数组,写2层循环基本就可以搞定。但是有几个点要注意一下:

1.代码风格.因为你写的代码,面试官全程都能实时的看到,所以一些好的代码习惯要提前培养好.(后面面试官的提问也证明了这一点)

2.注意一些异常Case的处理,比如参数的合法性,空判断等。

3.算法的优化,尽可能给出复杂度低,性能高效的代码

大概花了30分钟左右,我提示面试官我做完了.面试官看了一下,指出了一些异常Case的问题,一些算法中需要优化的地方.另外因为我对一些临时变量 \ 成员变量的命名已经形成了一定的习惯,面试官问我有没有读过源码,我说读过一些,然后简单的问了一些源码里的命名规则等等. 这里建议面试者可以读一读阿里出的<Android开发手册> ,里面有讲到一些命名相关的内容,应该会对面试有一定的帮助

后面又继续问了:

1.多线程

2.自定义View

3.Activity 启动模式

4.读写锁

5.性能优化,耗电量优化

6.还有一些记不清了,但是都是Android中比较基础的东西,但会问的比较深入,会直接问到源码的实现等等.

7.另外比较重头的就是项目了.项目里的各种细节都会在这里被放大,这一块占了60%左右感觉

第一轮的电话面总共持续了90~100分钟,感觉还Ok,面试官评价也还可以.~~~

-----------------------------------------------------------------------------------------------------------

阿里二面

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值