一.面试题
1.Xcode项目的目录结构是怎么分组的?
2.简单介绍下在真机上调试开发证书申请流程.
3.按Home键时,怎么保存程序运行状态
4.当程序运行过程中,按下home键以后,ios程序会调用哪个代码。
5.怎么定义/实现一个协议
6.什么是推送消息
7.使用xcode创建工程时,支持同时创建的版本管理库是
8.请描述一下UIViewController的生命周期
9.视图控制器之间的通信方式有哪些(如何传递变量)
10.runloop是什么?在主线程中的某个函数里调用了异步函数,怎么样block当前线程,且还能相应当前线程的time事件和touch事件。
11.NSArray和NSSet有何区别
12. 开发过程中应用程序内存泄露了该怎么办
13. 数学题从1-20中有两个任意数 ,A知道2个数字的和,B知道两个数组的乘积,
A问B 你知道这个两个数字的吗? B说不知道
B问A 那你知道这两个数字吗 A说不知道
B说,哦,我知道了
A说,我也知道了
请问这两个数字是多少
14.SEL是OC中的另一种消息传递机制。运行时调用特点,和多线程方面特点是什么?
15.performSelector方法的使用场景。在mainThread中,实现这个方法的作用。
16. NSOperation 和CGD不同点是什么,有什么好处,怎样区别使用?
17.OC中有没有类似其他面向对象语言异常捕获机制?如果有异常exception 怎么捕获?不同的CPU结构上开销怎样?C++中又什么类似的方法?
18.在一个对象释放前.如果他被加到了notificationCenter 中.不在notificationcenter中remove这个对象可能会出现什么问题?会不会有问题?
19.怎样实现一个 singleton的类.给出思路。
20.什么是序列化或者Acrchiving,可以用来做什么,怎样与copy结合,原理是什么?
21在iphone上有两件事情要做,请问是在一个线程里按顺序做效率高还是两个线程里做效率高?为什么?
22.你是否接触过OC中的反射机制?简单聊一下概念和使用。
23.账号登录验证以及账号加密保存?聊聊所用技术和实现逻辑。
24.三方支付、加密算法【AES、MD5、3DES+BASE64d等】的问题。
25. ios4、5、6相对于之前的版本添加了哪些新特性?
二.笔记题
8. 从1-n个五序列的数字中排序的算法有哪些,简单代码实现一个并写出时间复杂度
9. 开启一个其他线程来计算1+1 并且把结果用主线程显示在label上更新UI
10.有一个6克和21克的砝码,怎样称量三次将420克的糖分成270克和150克
11. 一桌子人,每个人额头上都贴有标签,绿色和红色,绿色至少1个,大家都能看到别人头上的标签,看不到自己头上的标签,然后开始闭眼游戏,大家觉得自己头上是绿色标签就拍一下手掌,第一次闭眼没人拍掌,第二次,第三次也同样没有人拍掌,第四次有一个人拍掌了,请问绿色标签有几张?
三.算法题
1.检测两条链表是否想交,是则返回第一个交点,否则返回NULL。
node * detect_intersect_links
(node *first_link,node *second_link)
四.编程题
1.请写出“快速排序”或者描述实现过程原理
2.用NSLog函数输出一个浮点数,结果不四舍五入,并且保留一位小数?
3.用你熟悉的语言写一个方法判断20121229(阶乘)在十进制下是几位数?
4.现在要做一个汽车360的动画,应该如何做。
5 这个项目里面遇到什么技术难点?有没有令你印象最深的BUG?
6 做项目时遇到什么困哪?怎么解决?
7 iOS7有什么特点,与iOS 6相比,有哪些明显的不同?
8在iOS7中,所有控制器默认都是全屏的,上面20的状态栏高度也属于控制器
9 iOS 7多了一些新的框架和API:TextKit、UIDynamic、SpriteKit、Autolayout更好使
10 Xcode5 有什么新特性?
11 什么是面向对象?面向对象和面向过程有什么区别?
12 你常逛技术网站么?
13 CocoaChina、Stackoverflow、objc.io、Code4app
14 给大家分享一个不错的 blog