字节跳动安卓、测试开发实习生面试题和总结

字节跳动安卓、测试开发实习生面试题和总结

引言

本人大三,19年9月面了字节跳动的测试开发岗,2面技术面和1面hr面,面试都过了,面的平时的实习岗,想保研怕成绩掉,选择留在学校,拒offer。(伤心)
很幸运的是我的简历被内推到了其他部门,10月初字节安卓部门的hr给我打电话,愿意给我寒假和暑假以及大四学期的实习机会,然后又面了字节的安卓部门。
刚刚安卓二面面完,感觉面的不太好,还需要加油吧,冲鸭!大家一起加油!
我应该还会发一篇我准备测开和安卓面试的知识点汇总和思维导图,大家也可以关注下我 😃,链接我写完了会放在这里

短信

面试

我只记得一部分了,我可能是运气比较好,面试难度比起其他人可能不算太难,大家随意参考下就行。

测开一面

按时间顺序:
1.自我介绍(我吹了一波项目背景、我做项目的思路和应用场景、项目具体应用价值)
2.算法 (思路+现场代码实现)
(1)随机红包 输入人数和总钱数,每个人抢红包的时间不一样,但是要实现抢红包要公平,所有人要把红包钱分完,要求对完成的代码要求写出测试用例,考察测试能力。
3.网络
dns域名解析,TCP/IP协议,和应用层、传输层、网络层、链路层这四层的考察。
真不记得了……

测开二面

1.自我介绍,介绍我自己的项目(还是讲项目背景,这里讲了很久,面试官很感兴趣,这可能是我面的那么烂还过了的原因……)
2.算法
(1)扔球,有2个球,2个球都是碎了就不能用了,现在有一栋100楼的房子,1楼扔秋肯定不会碎,100楼扔球下来肯定碎了,问扔多少次一定能找到让球碎的临界点(一定要找到)。
(2)输入数字n,然后再输入n个字符串,2个字符串为一类的标准是字母位置可以随便乱动,其实就是只要两个字符的 字符类型数目和字符每个类型的字符个数相等就行,比如“aabbcc”“abacbc” "abaccb"他们都是一类。
判断这n个字符串有多少类,又有多少个字符串属于这每个类。
面试官还考了我如何测试我自己的代码,写什么样的测试用例。

安卓一面

1.算法
(1)实现一个最长升序子数组
(2)实现前n个最长的升序子数组,时间复杂度又是多少

2.网络
(1)HTTP状态码,2,3,4,5开头的我都说出来了,面试官还问了1开头的状态码是代表什么
(2)客户机和服务器之间进行请求的方法,有什么区别

3.Java数据结构
(1)hashmap的实现,并且如果内部链表过长怎么办
(2)jvm的内存机制,堆栈内存、程序计数器的作用,GC回收

安卓二面

安卓二面让人难受,我太菜了,整整1个小时20分钟的干货面试。
1.算法
输入IP,判断IP是否合法(必须用Java实现,难受……)
我利用正则表达式实现了,面试官要求求出时间复杂度。
面试官又要求,别的方法(我用的整除,要遍历两次)。结果面试官又要求最好只遍历一遍。

2.java
(1)java异常
(2)LinkedHashMap
(3)GC的详细流程
(4)如何创建线程,runnable创建的对象可以直接跑吗?有几种方法,线程池核心参数

3.安卓
(1)进程/线程之间通信
(2)异步消息处理机制、handler如何回调和消息传递机制切换、子线程如何通知主线程,主线程如何通知子线程
(3)重写view的方法,怎么实现的
(4)手机滑动界面是怎么实现的
(面试官似乎都不屑于面四大组件、生命周期啥的……我哭了:( 我太难了)

4.个人问题
我能实习多久,大三寒假和暑假来实习能实习多久,如果大四还来实习,最起码能保证几个月(我说的大四最起码5个月)

我觉得我挂了,等消息吧:(

总结

字节很看重算法,java数据结构,网络和线程等……
我在算法的复杂度、线程的锁、网络方面还是学得不够扎实,我还好菜,加油吧
如果你觉得对你面试有用,点个赞再走行吗~
(共勉 😃)

如果大家对深度学习和大厂面试感兴趣的人,也可以加关注我的微信公众号,里面包括保研分享、大厂面试、机器学习等内容,会持续更新的:)
在这里插入图片描述

  • 8
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值