首页 > 腾讯PCG移动客户端开发面经(2020暑期实习)
头像
徐201903212006771
编辑于 2020-06-05 18:28
+ 关注

腾讯PCG移动客户端开发面经(2020暑期实习)

一面 时间:2020.05.22         面试时长:1h

1.       自我介绍

2.       笔试题1:删除无序链表中的重复结点(能否优化)

例:输入3 -> 2 -> 4 -> 3 -> 5 输出3 -> 2 -> 4 -> 5

解释:3结点重复,将第二个’3’结点删除(这边的重复指的是结点的值重复)

3.       笔试题2:先说一下二叉树的有哪些遍历方法。写一个二叉树前序遍历的非递归形式。

4.       讲一下Java的内存。

5.       创建一个字符串对象,这个对象分配在哪里?

6.       String str = “123” + “456”;会创建几个对象。

7.       问了操作系统的问题,没学过,所以也忘了问了什么。

8.       数据存储有学过吗?数据库和文件保存有什么区别?

9.       Activity有哪些启动模式?

10.   有什么要问的?


二面 时间:2020.05.23         面试时长:1h

1.       上一轮面试做了哪2到面试题?

2.       会哪些编程语言?

3.       想做哪个方向?为什么?Android

4.       对Android比较感兴趣,都学了些什么?我答了活动的启动模式、Handler。

5.       ListView源代码有看过吗?没看过。

6.       想一下ListView应该是怎么实现的?链表?

7.       ListView滑动页面如何实现页面的复用?队列?后来经过面试官的引导,有了思路。一开始往下滑,为了不影响用户体验,下面的数据,需要先预加载,这样往下滑的时候,就可以快速地显示内容。如果往下滑了之后,又想要往上滑,采用移出页面的内容,就把相应的数据销毁掉,等需要再显示的时候重新加载,比较费时;可以在一开始往下滑的时候,移出页面的内容,将相应的UI数据(不是实际的内容数据,这个一直在存储空间中)压到一个栈里面,等要往回滑的时候,再出栈,恢复数据,这样就比较快。因此在做滑动页面的操作的时候,需要上下预留出一定量的项的数据,超过这个量,再把这些数据释放掉,具体需要留多少,一个是跟页面能显示多少有关,可以通过大量测试,看看多少比较合适。还跟用户的使用习惯有关,动态调节,可以引入机器学习的方法。

8.       给你2个线程,如何产生死锁?为什么会产生死锁?

9.       外存有一定量的数据,需要读取到内存中处理,但是内存的大小是不知道的,要求如何能够读取尽量少的次数,才能处理完全部的数据?

核心是试探内存的大小,假如要处理100M、数据

思路一:先用一个较小的数,比如1M的数据,看看内存能不能存得下,可以的话,2M,可以,4M,……如此指数增长地尝试,希望能找出一个比较大地和内存容量比较接近的值。假如得到了内存的大概大小,然后每次就以这个数来读取外存的数据,读取次数应该会比较少。

思路二:和思路一类似,不同的是一开始选的数偏大,比如5M,然后每次按固定值增长,即线性增长。后面的操作就类似了。

思路三:从大往小试探,先看50M能不能存得下,不行25M,可以37M,每次处理37M,3次就够了。

假如内存分成了50M、25M、10M、5M,如何找到第65M内存?

10.   实习想要达到什么样的期望?基础能力得提升,想能独立做出几个App。

11.   如何达到你得期望?基础要扎实,看安卓源代码,在实际场景中做练习。想要在多少时间达到这样一个目标?实习完,能独立开发几个应用;正式入职,深入了解安卓,新发布的技术也要及时了,工作个1-2年,看看能不能当个小组leader。

在这方面花更多精力,学新知识,不断解决问题、总结,遇到问题向同事请教,成长更快。

12.   有看过Github得源码吗?

13.   提问环节:问了面试官是做什么方向的?做了很多方向。

14.   还问了Kotlin在公司的普及度,现在是否有必要学习?现在主要还是以Java为主,少数也在做,毕竟Java沉淀了这么多年。所以还是Java方面先学好。

15.   自己选方向,还是分配方向?比较想做安卓。都做了哪些努力?看书、看博客。

16.   周围有同学投腾讯的吗?有做客户端、前端的吗?


5.26        面试环节变成HR面了,可是一直没接到HR的电话。

5.27        晚上10点多,可能是HR打电话过来,可是手机设置了静音,那时我正在骑车回宿舍,完美错过。

5.28        终于接到HR打来的电话,问我明天有空面试吗?我说没有,要出去有点事,然后就约了晚上22:30面试,然而HR议程有延迟,所以就推迟了面试时间。

5.29        又一次把面试时间定在了晚上22:30。

面了40min

1.       自我介绍。

2.       从我做的项目里学到了什么?

3.       我有什么优势?什么劣势?

4.       还参加了哪些公司的面试?

5.       各公司的面试体验怎么样?

6.       在学校参加过哪些活动?

7.       提问环节:有转正答辩吗?加班情况。部门在哪座大厦?

6.05    收到了oc,正式offer应该过几天就发了。

更多模拟面试

全部评论

(3) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

近期热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐