投递岗位:OPPO,安卓客户端开发
投递时间:OPPO的春招早在1月份就已经开了,我是2月21号投递的,3月8号发邮件,3月9号,也就是今天,要求笔试。
笔试题目(单选):
单选1-5:1,动态分区的作用。2,时间复杂度求解(单层循环)。3,URL和URI的概念(谁的范围更大)。4,Java抽象类和接口的区别。5,块设备和字符设备有哪些。
单选6-10:6,安卓布局(居中布局)。7,反射机制的作用。8,Activity的概念(Activity不能够长期的在后台工作)。9,单链表的删除流程。10,DNS是什么。
单选11-15:11,404返回码的概念。12,SQL排序语句。13,Kotlin声明一个常量。14,Kotlin的权限修饰符。15,Java的流(字符流和字节流)。
单选16-20:16,Kotlin的类对象(一定要构造函数吗)。17,前缀表达式转中缀表达式。18,SQL插入一条数据。19,service的作用(是否附于Activity)。20,二分查找的次序。
编程题(3题,15分,20分,25分)
1,给你一个只会有a和b组成的字符串。这个字符串的前缀可能由连续的a组成,同时后缀可能由连续的b组成,交换这两个字符子串并且输出。
2,给你N个开闭区间,求这些开闭区间有多少组是相交的。(如下图)
3,给你一个图,(本质上是一个二维数组),这个图里面仅仅含有三种标识(+代表客户,*代表障碍,a代表通路),你需要在标识为通路的地方修建邮局,邮局和所有的客户之间的距离是最短的。你可以在这个图里面找到多少合适的地点来修建邮局?(输出可以为0)
总结:
1,OPPO的这个笔试,编程题应该具有泛用性,也就是前端,后端,算法,可能都会是类似的题库。
2,编程题的第二题挺意难平的,因为题目并不难,按照示例的介绍,应该认为区间内部非连续。换言之,认为[3,5)和(4,6]是没有交集的,这两个区间分别只含有数字3,4以及数字5,6。通过这种方式可以得出示例的答案,也就是4。然而实际的算法没有通过一个样例。遂更改算法,认为上面的区间是可以重合的,但也仍然没有通过的样例。
3,所以说,可能本人真的和OPPO没啥缘分吧。OPPO这边想要进入面试,至少要求完成两道算法题才有进面的资格。所以我这种情况是肯定是走不了后续的。现在投递OPPO是肯定还有机会的,所以也就把经验发上来,有缘人自取便是。
#OPPO##OPPO求职进展汇总##春招##笔试##客户端#