vlambda博客
学习文章列表

货拉拉国际化技术部门Android实习生一、二面面经

1.自我介绍。

2.java的内存区域划分,分别是什么作用。

3.说说hashmap底层实现原理,和hashset有什么区别?如果用到多线程怎么保证线程安全?

4.string,stringbuilder,stringbuffer的区别。 

5.什么是面向对象?

6.一个3升的桶和5升的桶,怎么确定4升的水?

 7.八个球,其中一个比较重,最少几次能确定重的球?

8.什么内存泄露?导致内存泄露的常见原因?

9.一个父view和一个子view怎么实现在界面的居中?包括水平居中,竖直居中。  

10.osi模型有几层?网络层,传输层的作用?

11.操作系统的磁盘,文件等的内容。

12.介绍一下https。

13.tcp的机制(滑动窗口协议)

14.网络层,传输层的常见协议有哪些

15.二叉树的遍历方式有哪些?

16.怎么确定单链表的倒数第k个节点。

17.什么时候能过来实习。

18.java中的四大引用。

19.说说大端,小端区别。

 20.反问。

第二轮面试记得是这个部门的技术总监,hr小姐姐叮嘱我一定不要迟到。在10月8号的中午12点半左右,我开始了第二轮面试。怎么说呢,感觉这次面试并不会很难,而且也不会有那么大的压力感,总监性格很好,态度比较友好。不过面试时间比上次短了许多,记得的题目我就记下来了,有些记不起来了。面经如下:

1.自我介绍 ,感觉你们课程比较忙是吗

2.做项目遇到的难题?

3.有上线的项目吗。

4.有自定义框架过吗

5.http和https区别,https怎么进行加密数据的?

5.死锁是什么原因?四个必要条件?

6.学过哪些数据结构?

7.数组和链表的区别?

8.数组有0和非0的数,把0全放到后面,怎么做?那如果不开辟新的内存呢,在原数组上改动?那如果保证非0的元素在改变后位置顺序仍保持不变呢?

9.给个数组例如1,3,5,7,9等有序数组,找出是否有7的数字,有,返回索引,没有,返回-1;手写我看。说说算法思路。

10.反问。 


文|牛客:小肥罗