• 面试二十一


    阿里一面

    1.Android的activity

    2.Category支持添加属性与成员变量吗

    3.是否了解设计模式, 用过哪些

    4.iOS7之后, 蓝牙的围栏功能

    5.MVC是否了解?介绍下使用情况。

    6.MVC里面, View怎么通知到Model

    7.了解delegate吗?并介绍

    8.说说Cell重用原理

    9.异步下载如何实现

    10.做过最大的项目是什么?主要难点在哪里

    11.如果现在要实现一个下载功能, 你要如何设计。说说每个类具体做什么

    12.学过哪些语言

    13.C++里面虚函数作用

    14.对o2o有什么看法(他是o2o部门的)

    15.有没有什么想问的

    阿里二面

    1.什么时候接触iOS

    2.你的这些项目是外包还是自己开发的

    3.OC允许多继承吗

    4.要用什么方式实现多继承

    5.了解内存管理吗, 吧唧吧唧...

    6.了解设计模式吗

    7.具体说说MVC

    8.了解KVO吗

    9.如果让你设计KVO, 要怎么设计

    10.现在你是如何适配的

    11.比较下storyboard和全代码

    12.印象比较深的项目, 难点在哪

    13.Cell重用机制具体怎么实现

    14.如果有1w张图片要在屏幕滚动显示(每张图片满屏), 至少要几个cell, 如何实现循环滚动

    15.平时是怎么进行测试的, 内存方面怎么测试

    16.平时如何实现网络请求, 一般返回的数据是什么格式, 如何解析..

    17.平时自己有没有封装过比较复杂的控件

    18.在什么情况使用Notification

    19.如何实现类似 "Find My iPhone" 这样功能

    网易

    1.自我介绍

    2.学习iOS动机

    3.对iOS的看法

    4.谈项目

    5.怎么看待审核被拒

    6.怎么完成后期检测, 优化

    7.id ,NSObject, id

    8.了解iOS内存管理吗

    9.release 和 autorelease 区别

    10.autorelease 和 @autorelease区别

    11.weak什么时候用

    12.unsafe_unretained , weak, assign 区别

    13.__block什么时候用

    14.在block里面, 对数组执行添加操作, 这个数组需要声明成 __block吗

    15.在block里面, 对NSInteger进行修改, 这个NSInteger是否需要声明成__blcok

    16.了解循环引用吗

    17.NSThread, NSOperation, GCD区别

    18.如何在异步下载时候, 取消下载, 保证流量不浪费

    19.了解runtime吗

    20.runtime什么时候用

    21.通知和KVO区别

    22.有序和无序set实现原理区别

    23.深度遍历和广度遍历使用场景

    24.算法题 * 2

    25.常用的设计模式

    26.哪些设计模式属于观察者模式

    27.总结下刚才面试中哪些不足

    28.自己有什么优点

    29.有什么想问的

    网易二面

    1.如何实现一个数组每个元素依次向右移动k位。(后头的往前面补) 比如: [1, 2, 3, 4, 5] 挪两位变成[4, 5, 1, 2, 3]

    2.实现连连看算法

    3.T9算法如何实现, 全拼算法

    腾讯

    1. 自我介绍
    2. 如何保证软件质量, 怎么分析Crash日志
    3. Xcode集成的测试工具了解哪些
    4. 如何获取应用数据
    5. 是否接触过友盟
    6. 是否了解Android
    7. 你的个人主页是怎么写的
    8. 谈谈你觉得最重要的一个项目
    9. 谈谈你的xxx项目
    10. 你这个项目里面集成了微信SDK, 谈谈使用感想
    11. 假如我是一名初学者, 你会向我推荐哪些第三方库
    12. 使用了第三方库, 有看他们是怎么实现的吗
    13. 有没有看过大型项目的源码
    14. 强连通量算法
    15. 最短路径算法
    16. 排序算法
    17. 25个人, 每5人1个跑道, 最少经过几次赛跑, 得到前3名

    腾讯二面

    在线敲代码

    1.求两个整数的最大公约数

    2.微信用户都是双向的好友,a是b的好友,那么b一定是a的。给定一个用户列表,有些用户是好友,有些不是,请判断,这些用户是否可以划分为两组,每组内的用 户,互相都不是好友。如果能,请给出这个划分。

    建议:

    1. 基础。 不管是哪个方向, 基础很重要。就比如iOS, objc的方方面面都必须了解。
    2. 全面。 有些东西, 虽然不见得能答好, 但你至少应该懂。
    3. 设计模式。 主流的那些设计模式非常有必要了解。
    4. 算法。 这个不是说恶补能补好的。建议大家长期积累。 另外推荐<剑指offer>这本书。同时, 可以在这里线上答题: 牛客网-剑指offer
    5. 简历一定要真实! 基本上面试官都是围绕简历展开交流的。 懂或不懂, 一问就知道, 没必要搬起石头砸自己的脚
    6. 提前准备。 比如自我介绍, 项目介绍, 职业规划等等。基本都是必问的题目,能提前准备就提前准备好。
    7. 开源, 分享, 积累。 我一直认为, 分享和开源是程序员进步的不二法门。 我建议每个程序员都应该有自己的Github, 有自己的博客。就这几次面试来说, 博客和Github帮了我多。 网易面试官直言, 他们认真看过我的Github, 微信HR问我要CSDN博客ID, 说她很感兴趣。帮助别人, 也是帮助自己。
    8. 沟通。 有时候一个问题, 可能不懂, 甚至题目都不理解。不要害怕, 主动与面试官沟通。 我在网易面试的时候, 关于全拼算法的实现, 我当时连全拼都没一个完整的概念, 它要满足哪些条件更加不清楚。我跟面试官坦诚我不懂这个概念, 与他们的一步步沟通中实现了自己的算法。 所以沟通, 远比闷头写, 到头来还可能错误来的实在。
    9. 自信。 能得到面试机会, 最起码证明, 你很优秀。 我觉得自信很重要。 如果一开始, 就表现的慌慌张张, 畏首畏尾, 那么不管是你自己的发挥, 还是面试官对你的看法, 我觉得都不会很好。
  • 相关阅读:
    宫立秋20201015-3 每周例行报告
    宫立秋 20201008-1 每周例行报告
    分析“中国铁路12306”查询某个火车经过的车站和预计到达时间的request请求和respond响应。
    来自童晶老师的游戏开发课程作业
    飞机大战
    总结
    20201207-总结
    实时时钟
    作业要求 20201126-1 每周例行报告
    要求 20201120-1 每周例行报告
  • 原文地址:https://www.cnblogs.com/shidaying/p/8144403.html
Copyright © 2020-2023  润新知