腾讯安卓校招暑期实习三面

一到三面每个面试官前辈都很友好,不会的,或者不清楚的都会给我们讲清楚
一面 4.9  下午两点到三点
没有自我介绍直接上
1.内存泄***r>2.项目(说了好长时间)
3.接触过的设计模式
4.项目里有一个简单封装retrofit让我猜想retrofit里会有什么设计模式
5.剖析代理模式
6.简单叙述单例模式的实现,除了饿汉和懒汉还有其他的什么实现
7.hashMap的原理
8. equals和hashcode
9.链表和数组
10.listview和recleyview
11. activity跳转的时候生命周期的变动
12.事件分发
13.算法
一个数组中有出现两次的数和一个只出现过一次的数,找出这个出现一次的数,时间复杂度要求on 空间o1
没想到异或,面试官小哥哥说时间复杂度有点难,让我手写了个死锁感觉捡了个漏

二面4.12  2点半到4点半
1.讲项目,共享屏幕,给面试官细说项目和功能
2.二面面试官小哥哥没有问一道明面上的题(重点在网络原理那一块,我简述一遍通信流程http到https的过程,简述了DNS和ARP,每层基本做了什么事,问我哪个步骤比较消耗时间)
3.线程同步是啥,手写一个线程同步(我写的生产者消费者)
4.实习时间
5.项目中担任什么角***r>6.你技术比较强的话,帮助你的队友解决过什么bug
7.一道算法
漂亮的腾讯行政MM请求程序员小哥哥帮忙:提前一天能收到1614会议室预定安排的全部开始和结束时间,要求根据时间列表编排会议室日程,为了使得会议室资源最大化利用,希望能
尽量多的安排当天会议。
要求输入场次列表,输出最多安排的会议,例如:输入数组:[{start:9,end:10},{start:10,end:11},{start:9.5,end:12},{start:9,end:11.5},{start:11,end:11.5},{start:14.5,end:16},{start:17,end:18},{start:19.5,end:21},{start:19,end:20}]
输出数组:[{start:9,end:10},{start:10,end:11},{start:11,end:12},{start:14.5,end:16},{start:17,end:18},{start:19,end:20}](测试用例有问题,就是个排序问题)
8.iq题
一群精于计算的人开舞会,每人头上都戴着一顶
。帽子只有黑白两种,黑的至少有一顶。每个人都能看到其他人帽子的颜色,却看不到自己的。主持人先让大家看看别人头上戴的是什么帽子,然后关灯,如果有人认为自己戴的是黑帽子,就打自己一个耳光。第一次关灯,没有声音。于是再开灯,大家再看一遍,关灯时仍然鸦雀无声。一直到第三次关灯,才有打耳光的声音响起。问有多少人戴着黑帽子?请口述推理过程,不必书写。
9.反问

半小时后约三面


三面4.12  7点到8点半
1.一面问的东西基本上又问了一遍
2.final
3.多态(静态和动态分配)
4.view绘制流程
5.接口和abstract类
6.实现线程同步的方式
7.synchronized和volatile的区别
8.简单的热修复原理,类加载,双亲委托,为啥用双亲委托
9.https的过程和原理
10.http的keep alive
11.客户端保存数据的方式
12.sp和sqllite的区别
13.service和intentservice
14.面试官小哥哥想问我retrofit和glide的源码,我直接说不会让他打消了念头
15.activity的四种启动模式和应用场景
16.反射怎么获取私有属性
17.单例模式为啥加上volatile
18.content provider用过吗
19.AsyncTask用过吗
20.handler原理
21.handler怎么处理要先处理的事件(消息队列是一个按执行时间排序的优先级队列)
22.了解过reentrantlock和synchronized的底层原理吗(主要是想问怎么实现的可重入,回答从AQS的state入手,synchronized也是用类似只是借助指令完成的可重入)
23.手写反转链表 感觉又捡了漏
24.dx命令,java文件咋被打包成dex的
25.反问

求求腾讯爸爸给一份offer

#实习##面经##腾讯##安卓工程师#
全部评论
题不算太多,但是我感觉大厂更看重你的整体知识体系,我个人喜欢扯皮,面试官小哥哥问我一个题,我会从原因和根上剖析这个题,这么做我也不知道好还是不好,话有点多,基本上问完一个题,我能把他问的那个题周围的知识体系都扯一下
4
送花
回复 分享
发布于 2021-04-13 19:21
楼主什么部门?
点赞
送花
回复 分享
发布于 2021-04-13 21:00
神州信息
校招火热招聘中
官网直投

相关推荐

Canvas元素是HTML5中的一个标签,它提供了一个用于绘制图形、动画和图像处理的2D绘图环境。通过使用Canvas,开发者可以使用JavaScript来绘制图形、绘制文本、创建复杂的动画效果以及对图像进行处理和操作。Canvas元素在网页中具有广泛的应用场景,包括但不限于以下几个方面:https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&uuid=4fe429db552e4b3a966ed18c92a2298a数据可视化: Canvas可以用于绘制图表、统计图形和数据可视化。通过使用Canvas,开发者可以自定义绘制各种图形类型(例如折线图、柱状图、饼图等)来展示数据,从而使数据更具吸引力和可读性。游戏开发: Canvas提供了一个强大的绘图环境,非常适合开发2D游戏。通过Canvas,开发者可以绘制游戏场景、动态角色、特效等,并使用JavaScript控制游戏逻辑和交互。广告和动画效果: Canvas可以用于创建生动和吸引人的广告和动画效果。开发者可以利用Canvas绘制动画元素,创建动态效果,展示产品、服务或品牌。图像处理和编辑: Canvas提供了丰富的绘图API,使开发者能够在网页中对图像进行处理和编辑。例如,开发者可以使用Canvas绘制图像滤镜、调整图像颜色、裁剪和缩放图像等。交互式绘图工具: Canvas可以用于创建交互式绘图工具,例如图形编辑器、画板或实时协作工具。用户可以在Canvas上绘制图形、标记和注释,实现与其他用户的实时交互。
点赞 评论 收藏
分享
4 20 评论
分享
牛客网
牛客企业服务