美文网首页将来跳槽用技术干货面试
iOS秋招总结 = 面经 + 闲言碎语 (不断更新)

iOS秋招总结 = 面经 + 闲言碎语 (不断更新)

作者: 6b440373157d | 来源:发表于2018-02-28 10:11 被阅读904次

    面经包含:携程、阿里、京东、腾讯

    十一假期,秋招基本上已经结束了,剩下少量面试和少量流程中。虽然还没有最终决定,不过也还是决定来开个帖子,写一些总结回馈一下牛客。

    楼主是今年春招的时候开始接触的牛客,主要是看看面经和一些最新消息。真题做的很少,很水=。=,惭愧惭愧。然后秋招的时候由于实习比较忙,所以基本上就只投了秋招正式批,内推要么没投,要么踩线投,直接没了音信……

    楼主iOS开发(已经属于小众团体了),主要用的Swift语言(我就没发现有和我一样的)。下面上一些面经,希望能够对大家有那么一点点帮助。

    今日头条

    楼主春招的时候采用的是广撒网的战术(因为当时完完全全是个菜鸡,iOS大部分都是边春招边学的。。)也是侥幸拿到了头条暑期实习生的offer,然后阴差阳错的决定到北京来实习,然后暑期结束之后拿到转正的offer。

    当初巧合来的头条,来了之后觉得特别好,哈哈,趁机推荐一波。实习工资(正式还没谈)、福利、部门、地理位置都还不错,到现在也还在实习。

    携程

    携程是一家很令人蛋疼的公司。

    内推投了携程,通过了测评。然后进入了漫长的等待,某周打电话跟我说,问我能不能去上海面试,我说我在北京实习,能不能远程面试。hr倒是很爽快的答应了,并且约定两天后面试……

    然而,就此被鸽,进入了漫长的等待期。后来给携程校招组发反馈,终于获得了面试机会,两轮面试感觉答得还行,题也不是很难,然而就那么突然有一天gg了。

    携程面试题

    一面 

    请问访问m,n,l 3种类型变量的效率从高到低依次是()

    A. lnm

    B. mnl

    C. mln

    D. nlm

    请写出一个单例

    请写出程序计算结果

    AB两地相距1000米,小明从A地点以30米/分钟的速度向B地点走,小白从B地点以20米/分钟的速度向A地点走,两人同时出发,用代码写出他们多少分钟后遇到?

    请写出程序输出结果

    对数组  ["12-12","12-11", "12-11", "12-11",  "12-13", "12-14"]  去重同时进行排序

    使用递归方法计算99到1相加的计算结果。是否了解无尾随递

    请看下面一段代码 

    程序结果将输出

    A. 死锁

    B. 打印“aaaaaaa

    222 Hello?”

    C. 打印“222 Hello?

    aaaaaaa”

    D. 打印“”

    二面

    请说一说UITableView的重用机制

    请说一说你对Objective-C中property字段的了解

    请说一说你对iOS中内存管理的了解。ARC底层时如何实现的

    你是如何进行网络层的封装的?

    你是如何学习iOS开发的?

    阿里巴巴

    我对阿里整体印象还是不错的。春招的时候动作特别慢,基本隔两周面试一次,最后发offer都等了快一个月。不过这次秋招动作很快,两天就搞完了三面,两面技术都是很快,而且也都是问问项目,感觉加起来还没hr面时间长。

    阿里面试题

    一面

    为什么要用Alamofire而不用原生的NSURLSession,Alamofire的优势是什么?

    如果让你来封装一个网络库,类似于Alamofire或者SDWebImage,你会如何实现?

    在网络库中,如何针对TableView快速滚动过程中的图片额外渲染进行优化(网络库不能持有TableView)?

    二面

    iOS的系统架构是怎么样的?常用SDK有哪些?

    了解HTTP协议吗?GET和POST的区别是什么?

    对安全方面有何了解?如何应对web页面被劫持?了解HTTPS加密解密的过程吗

    京东

    京东总体来说还是体验不错的,和前两面的面试官相谈甚欢。整体感觉一面面官很注重基础,二面面官更看重项目一些,基本上都是根据简历和项目来问的。然而就在我志得意满之时突然接到了三面的电话(说好的只有两面技术面呢),然后各种怼我……

    京东面试题

    一面

    讲一讲你对iOS内存分配的理解?值类型和引用类型?

    假设ViewController中需要用一个Blcok来改变ViewController中的一个属性,需要怎么实现?

    这样实现之后,这个Block在内存中被存在何处?引用关系又是怎么样的?

    函数中的闭包,如果要求闭包执行完后立刻改变函数中某个变量的值,应该如何实现?

    如何实现一个类似于微信聊天界面的布局?

    如何用Auto Layout实现一个如下要求的布局: %^&@$^@(#!...... (说了一大堆 =。= 反正就是使用优先级就解决了)

    二面

    说一说 MVC 和 MVVM 的区别,以及各自的优缺点。

    如何将 MVC 改造成 MVVM ?在MVVM中,网络请求、缓存处理的部分应该放在哪个模块?

    为什么说Swift是面向协议的语言?使用 Protocol 有什么好处

    比较一下 Swift 和 Objective-C 在语言层面上的安全性?

    如果ViewController中使用闭包时,用weak避免循环引用,会有什么问题?

    当点击一个View时,发生了什么?如何扩大点击区域?

    如何对TableView进行优化?

    能讲一讲你对光栅化的理解吗?

    三面

    对Swift和OC有什么看法?

    能对Swif中的可选类型谈下你的理解吗?

    说一下快排的伪代码和时间复杂度?

    怎么判断两个链表是否相交?

    怎么反转二叉树?

    了解元组吗?

    了解多线程吗?

    什么是并行?

    现在有ABC三个任务,如何实现AB完成后再执行C?

    对 Runtime 有什么了解?

    HTTP 和 HTTPS 有什么区别?

    知道 HTTPS 通信过程吗?

    Struct 和 Class 有什么区别?

    腾讯

    腾讯的面试真的非常的注重基础,两个面官都对iOS不是很懂,而且对项目也没有太深入的探讨,只是让说了一下项目的架构,感觉就是想确认一下这个东西是不是你自己做的。第一面面完之后完全没涉及到iOS相关的知识,导致我面完之后问面试官是不是我当时投错了岗=。=!另外,腾讯HR态度是真的很好,赞一个。

    一面

    为什么要设计Cache?Cache分级有什么好处?

    如何保证多核数据的一致性?

    c++ new 和 malloc 有什么区别?

    c++ 可不可以多继承?

    c++ 引用和指针的区别?

    如何判断两个链表是否有交点?

    堆区和栈区有什么区别?为什么要这么设计?

    给栈增加一个Max函数接口,返回当前栈的最大值,应该如何设计?

    给定排好序的整数数组array[]以及整数n,如何找出和为n的两个数?

    如果没排好序呢?

    一个字符串,如何找出只出现一次并且最先出现的字符?

    二面

    反转字符串

    判断整数是否为$2^n$

    一个m*n的棋盘,有些格子不能走,如何找到左上角到右下角的最短路径?

    iOS 按下 Home 键之后会发生什么?

    c++中内存分配是怎样的?

    c++中常用的容器有哪些?

    queue和vector有什么区别?

    vector底层是怎么实现的?

    TCP三次握手?为什么两次不行?

    项目中有没有服务器push机制?

    结语

    秋招投的简历不多,面试也就这几家,还有几家在安排面试,之后有更新再继续更新。如果有想看答案的,或者觉得在这里格式不是很清晰的,我自己也总结了大部分题的答案放在Github

    可能iOS同学的不太多,希望对大家有点帮助吧~

    作者:Rickey王小吉

    本文来源于牛客网

    ——————————

    牛客网(www.nowcoder.com)

    - 互联网名企笔试真题

    - 校招求职笔经&面经

    - 程序员求职实习信息

    - 程序员学习交流社区

    相关文章

      网友评论

      • 星火燎原:携程一面的第一题,试题内容是不是写错了?变量l没有类型吗?还是我知识欠缺,没看明白
      • 星火燎原:老大,这些题目都有标准答案吗?面试的时候,总会遇到一些很纠结的题目,面试官认为你的答案不对,而面试官的答案又不能令你信服

      本文标题:iOS秋招总结 = 面经 + 闲言碎语 (不断更新)

      本文链接:https://www.haomeiwen.com/subject/enwpxftx.html