堆 堆是什么?是一种特殊的完全二叉树,就像下面这棵树一样。 有没有发现这棵二叉树有一个特点,就是所有父结点都比子结点要小(注意:圆圈里面的数是值,圆圈上面的数是这个结点的编号,此规定仅适用于本节)。符合这样特点的完全二叉树我们称为最小堆。反之,如果所有父结点都比子结点要大,这样的完全二叉树称为最大堆。那这一特性究竟有什么用呢? 假如有14个数分别是99、5、3...
ios面试总结 1.什么是单例,及其优缺点是什么?单例概念?单例就是一个类的单个实例。单例的服务对象?整个应用。单例通常用来做什么?当共享资源,实现窗口间传值。优点:1:一建全建,节省资源;2:一改全改,方便修改;3:单例接受的是受控访问;缺点:1:单例不能用来作为变化对象使用;2:单例不能被继承,很难扩展;3:单例的内存空间不能立即被释放,在应用程序终止后才会被释放;...
ios面试总结 1.什么是单例,及其优缺点是什么?单例概念?单例就是一个类的单个实例。单例的服务对象?整个应用。单例通常用来做什么?当共享资源,实现窗口间传值。优点:1:一建全建,节省资源;2:一改全改,方便修改;3:单例接受的是受控访问;缺点:1:单例不能用来作为变化对象使用;2:单例不能被继承,很难扩展;3:单例的内存空间不能立即被释放,在应用程序终止后才会被释放;...
数组筛选 //需要去掉的元素数组 NSMutableArray *filteredArray = [[NSMutableArray alloc]initWithObjects:@"1",@"4", nil]; //需要被筛选的数组 NSMutableArray *dataArray = [[NSMutableArray alloc]initWithObjects:@"1",...
通知 //通知传值——添加监听,等待页面二的传值 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(notHandle:) name:@"notify" object:nil];//收到通知后的一个处理,参数1就是通知- (void)notHandle:(NSNotification*)n...
block //下个页面@property (copy) void (^block)(NSString *);self.block(@"我是block传值");//上个页面nextVC.block = ^(NSString *str){ self.label.text = str;};
代理传值 代理传值主要是反向传值,由下一级页面向上一级页面传,下一级页面是委托方,上一级页面是代理方。(代理方:遵守+实现)——(委托方:持有+调用) //创建协议@protocol passValueDelegateProtocol <NSObject>- (void)passValue:(NSString *)str;@end//持有协议@property (w...
cocoa pods 本篇为转发文章 原文链接 【iOS工具】rvm、Ruby环境和CocoaPods安装使用及相关报错问题解决(2016.12.15 更新)还有以前的不错的链接 CocoaPods安装和使用教程【iOS工具】rvm、Ruby环境和CocoaPods安装使用及相关报错问题解决作者苜蓿鬼仙〇、前言在iOS开发中CocoaPods作为库依赖管理工具就是一把利器。有了CocoaPo...
CocoaPods 一、概要iOS开发时,项目中会引用许多第三方库,CocoaPods(https://github.com/CocoaPods/CocoaPods )可以用来统一管理这些第三方库。如果此文章已过时,可以查看 融云 集成文档,有关于cocoaPods的集成说明。点击打开链接二、安装1、Ruby环境搭建当前安装环境为MacBook Air 10.11.4。Mac OS本身自带Ruby,...
cocoapods 安装与使用 cocoapods 安装与使用一.CocoaPods是什么?CocoaPods是一个用Ruby写的、负责管理iOS项目中第三方开源库的工具,CocoaPods能让我们集中的、统一管理第三方开源库,为我们节省设置和更新第三方开源库的时间。二.CocoaPods的安装1.mac自带有ruby环境,但建议将ruby软件源换成国内的,否则在安装过程中可能会遇到一些没必要的问题 gem so...
升级macOS10.13.4之后,cocoapods不能正常使用了,这是苹果一贯的问题,遇到大版本系统升级,之前的一些软件就不能正常使用了。 升级macOS10.13.4之后,cocoapods不能正常使用了,这是苹果一贯的问题,遇到大版本系统升级,之前的一些软件就不能正常使用了。 终端输入 sudo gem update –system 显示如下错误 ERROR: While executing gem … (Gem::FilePermissionError) You don’t have write permissions...
ios沙盒文件操作 获取沙盒目录//获取沙盒目录- (NSString *)getHomePath{ NSString *homePath =NSHomeDirectory(); return homePath;}//获取Document目录- (NSString *)getDocumentPath{ NSArray *docPaths = NSSearchPathForDire...
常用MIME类型介绍 常用MIME类型介绍 格式前面为后辍名,后面为对应的 MIME 型例如:rar application/x-rar-compressed 表示 rar 对应的是application/x-rar-compressed { “.323”, “text/h323” },{ “.3gp”, “video/3gpp” },{ “.aab”, “application/x-autho...
集合视图UICollectionView #import "ViewController.h"#import "CollectionViewCell.h"#define COL_NUM 3@interface ViewController ()<UICollectionViewDelegate,UICollectionViewDataSource>@property (strong,nonatomic) NSArr...
单元格类CollectionViewCell #import "CollectionViewCell.h"@implementation CollectionViewCell-(id)initWithFrame:(CGRect)frame{ self = [super initWithFrame:frame]; if (self) { //cellWidth CGFloat cel...
UIPickerView普通选择器 #import "ViewController.h"@interface ViewController ()<UIPickerViewDelegate,UIPickerViewDataSource>@property (strong,nonatomic) UIPickerView *pickerView;@property (strong,nonatomic) UILabe...
UIDatePicker时间选择器 #import "ViewController.h"@interface ViewController ()@property (strong,nonatomic) UIDatePicker* dp;@property (strong,nonatomic) UILabel* lb;@end@implementation ViewController- (void)viewDid...