今天又被虐了,哎,平时太不注意细节了算是提了个醒吧,记录下来不要再被绊倒第二次

1.视图完整生命周期,First VC是从xib文件创建的,所以走了initWithCoder

2.判断一个数组是否是有序的

这道题当时脑子秀逗,一直想找到什么简便的方法,头脑一热还说出了使用快速排序对数组排序,一旦走入了交换两个位置的数字的分支,就可以返回,说明这个数组无序,但是仔细想想,快速排序平均情况下的时间复杂度为O(n * logn),而循环遍历数组的话时间复杂度为O(n),并没有优势,还是人家说得对,没什么捷径,网上看到一个比较有意思的递归解法:
// Recursive approach to check if an
// Array is sorted or notclass CkeckSorted
{// Function that returns 0 if a pair// is found unsortedstatic int arraySortedOrNot(int arr[], int n){// Array has one or no element or the// rest are already checked and approved.if (n == 1 || n == 0)return 1;// Unsorted pair found (Equal values allowed)if (arr[n-1] < arr[n-2])return 0;// Last pair was sorted// Keep on checkingreturn arraySortedOrNot(arr, n-1);}// main functionpublic static void main (String[] args) {int arr[] = {20, 23, 23, 45, 78, 88};int n = arr.length;if (arraySortedOrNot(arr, n)!=0)System.out.println("Yes");elseSystem.out.println("No");}
}

3.多个Timer在cell上怎么处理

正常的思路是为了低耦合,将Timer封装在Cell中,每个cell上的Timer都是独立的触发自己的方法,但是问题很快就会显示出来:
①cell的复用机制会导致显示错乱,窜行等问题。
②每个cell一个Timer,这个时候的内存消耗很可观
所以这种方式行不通,那么就将Timer放到Controller中去,这样好处就是只需要一个Timer就可以了,思路就是C中的Timer每1秒触发一次,触发后走响应方法,在方法中修改数据源,也就是每个Cell的倒计时剩余时间,修改完数据源,刷新tableView即可。

4.请求过来的Dic里Key特别多的话,如何初始化Model

用runtime获取类的所有属性,然后遍历字典为model赋值,但是他又问我如果有一百万个属性呢。。。我懵逼了(请把这种后台开除好吗?),如果谁能看出来面试官要考察的知识点,或者知道解决办法,务必留言,谢谢。

5.如何收集APP的崩溃信息

①通过Xcode自带的Product->Archive 然后在Tab切换标签选择Crash即可下载查看对应版本的奔溃日志
②使用第三方例如:友盟移动统计,Mob移动统计,百度移动统计,首先在第三方后台查看错误列表,然后下载崩溃日志文件,使用第三方自有的Crash分析工具对日志文件进行分析,定位到Crash行数后仔细分析是哪句代码引起崩溃。
③自己实现应用内崩溃收集并上传服务器。
④使用Window->Devices中直接查看某个设备的崩溃信息,配合dSYM文件和symbolicatecrash生成一个新的.crash文件,里面会显示崩溃的文件和行数。

不在被虐中成长就在被虐中死亡相关推荐

  1. 2022年度复盘和2023年目标:在焦虑中探索,在体验中成长,在开放中升华

    文章目录 2022年度复盘 工作:焦虑,认知,提升 个人工作:工作态度需要提升 团队工作:尊重.真诚.准确清晰完善 感悟 个人成长 硬能力:学习-博客 软能力:知乎.B站.书籍 感情 总结 2023年 ...

  2. 汇聚慈善力量共建美好桂中!共庆桂中社区第六个公益慈善日

    香城春色美!这个春日,和煦的春风和汇聚在桂中社区的浓浓公益慈善爱意撞了个满怀.2022年3月18日上午,由中共成都市新都区桂湖街道桂中社区委员会.桂湖街道桂中社区居民委员会主办的"凝聚慈善力 ...

  3. 在碰撞中成长 - 北京银行的DevOps实践之路

    2018年10/27日,在上海召开的微软年度最大规模的技术盛会-微软2018技术暨生态大会上,北京银行渠道系统负责人&敏捷团队负责人周兵女士和大家一起分享了北京银行的DevOps 实践转型经验 ...

  4. 阿里开发者们的第13个感悟:工程师需要在循环迭代中成长

    2015年12月20日,云栖社区上线.2018年12月20日,云栖社区3岁. 阿里巴巴常说"晴天修屋顶". 在我们看来,寒冬中,最值得投资的是学习,是增厚的知识储备. 所以社区特别 ...

  5. 在挑战中成长:CTO的生存与发展之道

    当走到 CTO 的岗位,不只需要深挖技术,团队内的管理也已不再是工作的全部重心,协调跨部门合作,与 CEO 有效协同,才是 CTO 需要重点考虑的问题,而在这些问题背后,隐藏的则是技术团队的价值和 C ...

  6. 懂得爱――在亲密关系中成长

    休假快一个月了,没有出游,只是读完了一本书,<懂得爱――在亲密关系中成长>.有一种堵在胸中的话被它说出来的畅快淋漓感觉,"对,就是这个样子!",和大学年代看南怀瑾时是一 ...

  7. 新计算机教师工作随笔反思,初中信息技术教学随笔:在反思中成长

    在反思中成长 河南濮阳市油田十二中 赵敏 以前上信息技术课时,无非是教师演示,学生再照着"葫芦画瓢".其实,在实际教学过程中,学生的学习效果并不好,对于接受能力强和以前已经接触过此 ...

  8. 成功不是偶然的,它是从寂寞中成长起来的花朵-----王选

    成功不是偶然的,它是从寂寞中成长起来的花朵-----王选. 最近总感觉很不顺,最近几天在网上搜索实习(自己想个实习的机会理论联系实际一下).... 发现很少单位需要我这样的.... 现在做数学的说我是 ...

  9. 卡内基《每日一智》---我们在智慧中成长

    卡内基<每日一智>---我们在智慧中成长 在我看这本书之前,我百度了下戴尔·卡耐基(卡内基),请原谅我的孤陋寡闻,我以前没了解过这些人物,看完他的百科名片才知道,他是从一个没有自信,几乎被 ...

最新文章

  1. 数据绑定以及Container.DataItem绑定技巧
  2. vs2017开发php,C#编写的可供PHP调用的com dll(Visual studio 2017)
  3. java实现递归下降分析_使用递归实现检查未知层级目录中的文件-Java实用技能
  4. Bootstrap入门(二十一)组件15:警告框
  5. mysql 条件 函数_mysql 函数 时间函数,数学函数,字符串函数,条件判断函数
  6. git管理复杂项目代码
  7. linux转码软件下载,格式工厂linux版
  8. 水果手绘插画素材|一眼就想吃了!
  9. iOS音频播放 (一):概述 转
  10. C字符串与C++字符串基本用法
  11. Asp.net 调用sqlserver存储过程参数传中文乱码!
  12. eclipse引入jar类包的源代码
  13. 当你写爬虫遇到APP的请求有加密参数时该怎么办?【初级篇-常规模式】
  14. 调节效应检验(一):线性回归分析
  15. 【Linux 内核 内存管理】内存映射相关数据结构 ① ( vm_area_struct 结构体 | task_struct、mm_struct、vm_area_struct 3 个结构体之间的关系)
  16. 4.3.2 Calculating and Applying VaR
  17. WEB 渗透之文件类操作
  18. 算子法二阶线性非齐次微分方程的通解
  19. 解放前端工程师——手把手教你开发自己的自定义列表和自定义表单系列之一缘起
  20. RE合同记账会计凭证

热门文章

  1. 柱状图折线图混合使用
  2. Excel2010 柱形图与折线图制表
  3. 卧槽,这也真的太上头了吧
  4. SYSCALL_DEFINEx宏源码解析
  5. SWUST OJ#1052 输出利用先序遍历创建的二叉树中的指定结点的双亲结点
  6. PPT模板免费下载制作
  7. 工作任务清单怎么写效率更高
  8. 面试回忆之二:MLY公司的面试题
  9. Kindle已连接WiFi网络,但无法连接互联网的解决办法
  10. ijKPlayer - 视频直播