【ios面试题2】教程文章相关的互联网学习教程文章

ios软件工程面试题(3)【图】

1.sandBox的目录结构home(沙盒名字-一串字符数字混合) Documents Library Caches Preferences tmp 1)获取home目录: home(沙盒名字-一串字符数字混合) NSString *homeDirectory = NSHomeDIrectory(); 2012-06-17 14:00:06.098 IosSandbox[3536:f803] /Users/rongfzh/Library/Application Support/iPhone Simulator/5.1/Applications/3B8EC78A-5EEE-4...

iOS面试题 第一天

今天上午,下午分别面试了两家公司。上午是一家互联网公司,气氛还比较好,是我比较喜欢的。技术这块是直接机试,主要是给了些BUG让我修复,整个过程还算顺利。下午去了一家大型的证券公司。整理技术问题如下:1. UIView的生命周期是什么样的,执行顺序是怎么样的?init —— loadView —— viewDidLoad —— viewWillAppear —— viewWillDisappear —— viewDidUnload —— dealloc.2. UIViewController在什么时候会加载UIVie...

iOS 37班多线程,socket,HTTP,ASIHttpRequest,等面试题总结集合

iOS 37班多线程,socket,HTTP,ASIHttpRequest,等面试题总结集合博客分类: ASIDownloadCache 设置下载缓存它对Get请求的响应数据进行缓存(被缓存的数据必需是成功的200请求):[ASIHTTPRequest setDefaultCache:[ASIDownloadCache sharedCache]];当设置缓存策略后,所有的请求都被自动的缓存起来。另外,如果仅仅希望某次请求使用缓存操作,也可以这样使用:ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];[requ...

过滤菜鸟的iOS面试题-b

网上已经有很多针对各种知识点的面试题,面试时有些人未必真正理解也能通过背题看上去很懂。我自己总结了4道面试题,好快速的判断这个人是否是一个合格的工程师,欢迎大家点评。1.struct和class的区别在面试之前你觉得所有的计算机专业的学生都应该能答的上来,事实是我面的人里有超过三分一没有答上来。有时我还会顺便问下swfit里的array是什么类型,在大量复制时会不会有性能问题。2.介绍一下观察者模式也许有些人已经觉得设计模...

iOS面试题系列之算法【代码】

1.时间复杂度 时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道.但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了.并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多.一个算法中的语句执行次数称为语句频度或时间频度.记为T(n). 时间复杂度 一般情况下,算法中基本操作重复执行的次数是问...

BAT iOS算法面试题(汇总)【图】

两数之和解决方案无重复字符的最长字串(2)"滑动窗口法"优化解决关键词介绍解题思路复杂度分析无重复字符的最长字串(3)优化"滑动窗口"解决代码块ASCII 128码 思路代码块最大回文子串解题思路找到字符串的最长公共子串动态编程解决方案复杂度代码块学习建议最大回文子串(2)我们上面分享的不管从时间复杂度还是空间复杂度,都是颇为浪费的?难道没有更优解决方案?肯定是有的!代码块复杂度大家可以画10分钟左右,将代码的模拟执行一...

iOS面试题整理---内存分配*栈区堆区全局区等相关知识【图】

【转载】编码篇-iOS程序中的内存分配 栈区堆区全局区等相关知识 前言在计算机的系统中,运行的应用程序中的数据都是保存在内存中,不同类型的数据,保存的内存区域不同。内存区域大致可以分为:栈区、堆区、全局区(静态区)、文字常量区、程序代码区。学习内存相关的知识对我们的日常开发是十分必要的。一. 栈区 (1)栈区(stack) 由编译器自动分配并释放,存放函数的参数值,局部变量等。栈是系统数据结构,对应线程/进程是唯一...

作为iOS开发,这道面试题你能答出来,说明你基础很OK!【图】

首先我们先来看一下这道面试题是啥?题目看着非常简单,我是先创建了一个继承NSObject的GDPerson类;GDPerson类的.h文件GDPerson类的.m文件再看一下我们viewController.m里面的代码:作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS开发交流群:130 595 548,不管你是小白还是大牛都欢迎入驻 ,让我们一起进步,共同发展!(群内会免费提供一些群主收藏的免费学习书籍资料以及整理好的几百道面试题和答案文档...

iOS188面试题面试题整理,底层、技术亮点公司需要的这里都有

100家知名企业今年来iOS面试题合集: 你要的这里都有; 企业要的这里也有; 从基础开始到进阶、深入底层 整理出188个面试题,全是干货 目录展示: 1、swift和oc的区别 2、编译链接 3、synthesize & denamic 4、在项目开发中常用的开发工具有哪些? 5、UITableView & UICollection 6、NSProxy & NSObject 7、Object & Swift 8、传值通知 & 推送通知(本地&远程) 9、第三方库 & 第三方平台 10、NSCache & NSDcitionary 11、 UIView的...

最新整理:iOS面试题-常问UI问题(四)【图】

前言:最近把 iOS 面试中可能会遇到的问题整理了一番, 题目大部分是网上收录的, 方便自己巩固复习, 也分享给大家; 希望对大家有所帮助!对于答案,不一定都合适,欢迎大家积极讨论;整理不易,如果您觉得还不错,麻烦在文末 “点个赞” ,或者留下您的评论“Mark” 一下,谢谢您的支持iOS面试题-常问UI问题(四)1.ViewController 生命周期单个viewController的生命周期- initWithCoder:(NSCoder *)aDecoder:(如果使用storyboard...

2021年iOS高级工程师最新面试题大全_基础知识【代码】【图】

1. unicode一个汉字占多少字节?字母呢? 一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间.2. NSObject结构体里面有什么,大小为什么是16字节?一个OC对象的内存布局? struct objc_object {Class _Nonnull isa OBJC_ISA_AVAILABILITY; }; objc_class是从objc_object中继承而来,所以objc_class中也有isa结构体 在objc_class结构体中关于class_data_bits_t的注释:class_rw_t * plus custom rr/alloc f...

最新iOS开发常见面试题总结二!(附答案)!【图】

1.iOS线程与进程的区别和联系?进程和线程都是由操作系统所体会的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性。程和线程的主要差别在于它们是不同的操作系统资源管理方式。进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多...

iOS面试题,性能优化篇!

1.形成tableView卡顿的缘由有哪些?1.最经常使用的就是cell的重用, 注册重用标识符若是不重用cell时,每当一个cell显示到屏幕上时,就会从新建立一个新的cellhtml若是有不少数据的时候,就会堆积不少cell。ios若是重用cell,为cell建立一个ID,每当须要显示cell 的时候,都会先去缓冲池中寻找可循环利用的cell,若是没有再从新建立cellc++2.避免cell的从新布局cell的布局填充等操做 比较耗时,通常建立时就布局好面试如能够将cell...

2021年面试:整理出一份高级iOS面试题!

1、NSArray与NSSet的区别?NSArray内存中存储地址连续,而NSSet不连续NSSet效率高,内部使用hash查找;NSArray查找需要遍历NSSet通过anyObject访问元素,NSArray通过下标访问2、NSHashTable与NSMapTable?NSHashTable是NSSet的通用版本,对元素弱引用,可变类型;可以在访问成员时copyNSMapTable是NSDictionary的通用版本,对元素弱引用,可变类型;可以在访问成员时copy(注:NSHashTable与NSSet的区别:NSHashTable可以通过option...

iOS 多线程面试题(GCD任务执行顺序)【图】

GCD任务执行顺序 1、串行队列先异步后同步 dispatch_queue_t serialQueue = dispatch_queue_create("test", DISPATCH_QUEUE_SERIAL); NSLog(@"1"); dispatch_async(serialQueue, ^{ NSLog(@"2"); }); NSLog(@"3"); dispatch_sync(serialQueue, ^{ NSLog(@"4"); }); NSLog(@"5"); 打印顺序是13245 原因是: 首先先打印1 接下来将任务2...