阿里、NHN CHINA、美团、腾讯面经(ios工程师社招)

阿里巴巴

1. 问了现在公司的情况

2.问了很多很深层的东西,比如我项目里所有用到的第三方框架,实现原理什么的。核心动画、网络上传,多线程,设计模式,图片压缩、上传,地图、各种网络、响应链。

NHN CHINA

总共有三面,前两面都是技术。刚开始是***人面试

1.问你基本的问题,什么多线程,网络优化。后来是个韩国人面试,问了几个智力题,还让用c写一个字符串替换的函数。

2.多线程的同步和互斥,线程池的实现,生产者消费者模型。我回答用互斥量和条件变量就可以实现同步与互斥,也可以实现生产者消费者模型。


美团网

3轮面试,2轮技术、1轮经理面

1、MRC、ARC

2、多线程等等

3、Runtime相关

4、ipa包、编译相关

5. 你觉得美团为什么能做到现在超过一半的市场份额

腾讯

先做了笔试,然后对着笔试结果展开的,腾讯的大珈会一步一步把你引导到他的问题上来,然后看你在分析问题的能力。

问用最有效的代码实现1.对一个排序整型数组去重2.对一个排序整型数组找出其中两数和为K的组合3.救两个数组的交集

我的回答1. void merge (int &a[], int count) { int i = 0, j = i+1 while ( i!=j && j<n) { if (a[i] != a[j]) { i++; a[i] = a[j]; j++; } else { j++ } } while (j<n) { a[j++] = 0; } } 2. finkKSet(int a[], int n, int K) { int i = 0, j = n-1 while (i<j) { if (a[i] + a[j] == K) { printf (a[i], a[j]); } else if (a[i] + a[j] < K) { i++; } else { j--; } } } 3.void mergeSet(int a[], int an, int b[], int bn) { int ai = 0, bi = 0; while (ai < an && bi < bn) { if (a[ai] == b[bi]) { printf (a[ai]) ai++; bi++; } else if (a[ai] < b[bi]) { ai++; } else { bi++; } }

#美团##阿里巴巴##腾讯##iOS工程师##社招##面经#
全部评论

相关推荐

2 8 评论
分享
牛客网
牛客企业服务