学习笔记
文章平均质量分 59
无良剑染
这个作者很懒,什么都没留下…
展开
-
吃透 Binary Indexed Trees (树状数组)
Binary Indexed Trees(中文名为树状数组,下文简称为BIT)是一种特殊的数据结构,适用于高效计算数列的前缀和, 区间和。时间复杂度:任意前缀和、区间和:O(logn)单点值修改:O(logn)空间复杂度: O(n) 。虽然 BIT 名称中带有 tree 这个词,但是实际存储时是利用数组进行存储,记nums为原始数组和 BIT为 BIT 数组。BIT[i]=∑k=i...原创 2019-12-31 11:52:09 · 266 阅读 · 0 评论 -
Swift面试题录(持续更新ing)
Swift面试题录(持续更新ing)文章目录Swift面试题录(持续更新ing)什么是函数编程struct与class 的区别Map、FlatMap、CompactMap、CompactMapValues、Filter、Reduce...原创 2019-11-30 21:23:44 · 339 阅读 · 0 评论 -
【Swift】Map、FlatMap、CompactMap、CompactMapValues、Filter、Reduce
【Swift】Map、FlatMap、CompactMap、CompactMapValues、Filter、Reduce文章目录【Swift】Map、FlatMap、CompactMap、CompactMapValues、Filter、ReduceMapcompactMapcompactMapValuesflatmapfilterreduceMapmap可以遍历集合并对每个元素进行处理,得到...原创 2019-11-30 21:17:02 · 383 阅读 · 0 评论 -
【swift】struct与class 的区别
数据类型:struct是值类型,class是引用类型。值类型变量直接包含数据,赋值时也是值拷贝,或者叫深拷贝,所以多个变量的操作不会相互影响。引用类型变量存储的是对数据的引用地址,后者称为对象,赋值时,是将对象的引用地址复制过去,也叫浅拷贝,因此若多个变量指向同一个对象时,操作会相互影响。值类型数据没有引用计数,也就不会因为循环引用导致内存泄漏,而引用类型存在引用计数,需要小心循环引用...原创 2019-11-25 21:58:24 · 821 阅读 · 0 评论 -
React/React-Native中的{}
文章目录import {user} from "./person"const { urlToPathAndParams } = pathUtilsimport {user} from “./person”在import时,有时会用{}引用,有时就不用{},区别如下://person.jsexport default 'person'export const user = 42expor...原创 2019-10-21 09:59:04 · 246 阅读 · 0 评论 -
125Deaths重开之SQLite3的应用
125Deaths重开之SQLite3的应用时隔多日,终于重新收拾好心情再次写这个玩意了,话说这是什么玩意,别问我,鬼才知道呢。 在很久很久之前,为了熟悉ios的数据储存,在写这个的时候便想用SQLite或者Coredata来储存陷阱信息作为练习,中途遇到了如何简易将陷阱信息写入数据库的问题,后来又因为各种琐事就不了了之了,现今重开,继续学习研究。 初步想法是在MAC上手动创建SQLite数据库原创 2017-05-20 00:46:54 · 209 阅读 · 0 评论 -
面向对象3-键值编码(KVC)和键值监听(KVO)
键值编码(KVC)和键值监听(KVO)KVC@interface MyUser:NSObject@property (nonatomic, copy) NSString* name;@endmain(){ @autoreleasepool { MyUser* user = [[MyUser allopc] init]; //用KVC方式为属性赋原创 2016-02-20 10:18:52 · 267 阅读 · 0 评论 -
界面布局之VFL
VFL(Visual Format Language)简单说明: H 横向 V 纵向 | 父视图边缘 - 默认距离 [viewName(30)] view用[]扩住,不能有self之类的关键字(会报错,原因后续),view的宽或者高为30 - 10 - 两者间距10 [viewName(>=60@700)] view的宽或者高大于等于60(>=,==,<=),优先级为700(优先原创 2017-05-28 16:46:55 · 366 阅读 · 0 评论 -
Category和Extension
一、概述类别是一种为现有的类添加新方法的方式。利用Objective-C的动态运行时分配机制,Category提供了一种比继承(inheritance)更为简洁的方法来对class进行扩展,无需创建对象类的子类就能为现有的类添加新方法,可以为任何已经存在的class添加方法,包括那些没有源代码的类(如某些框架类)。 二、示例1、声明类别@interf转载 2016-06-17 22:27:46 · 214 阅读 · 0 评论 -
IOS学习路上的各种疑难杂症(不断更新ing)
IOS学习路上的各种疑难杂症(不断更新ing)问题: 1. 关于Bundle和沙盒的关系与区别 170520 2. 能否通过代码删除Bundle中的文件 170520 3. Coredata如何打开已存在的数据库 170520 4. app从开启到进入界面的流程 170520 5. 模拟器沙盒与真机沙盒的区别 170520 6. 如果查看log排查bug 170520 7原创 2017-05-20 00:55:06 · 208 阅读 · 0 评论 -
frame、bounds、center、anchorPoint、position
今天继续完善代码时在anchorPoint遇到点小问题,忘记了其值是从0到1,而错误的赋予了很大的值,导致spirit没能出现在界面上,由此重温了一下关于frame、bounds、center、anchorPoint、position的内容。frame = (0,0,40,50):四个值分别为本视图的左上角在父视图中的坐标系的x和y值,视图的宽高,改变此值可变动本视图与父视图的相对位置,但不会改变原创 2017-05-21 16:07:51 · 829 阅读 · 0 评论 -
xml和json浅析(日后有待补充)
由于256那边在完善基础功能和界面阶段,在想到新的功能前,同时学习或者复习一些其他内容,所以就从网络通信开始下手,而网络通信的数据xml和json自然也就需要了解了。XML:基本机构元素分为element、attribute、content,当然element里是可以嵌套childElement的,解析规范分为DOM(Document Object Model)(日后补充)和SAX(Simple A原创 2017-05-22 13:07:57 · 326 阅读 · 0 评论 -
NSURLSession简单使用(日后补充)
NSURLSessionDataTask-(void)getTheWeatherInformationOfLocation:(NSString*)location { NSString *stringUrl = [NSString stringWithFormat:@"https://api.seniverse.com/v3/weather/now.json?key=evhy原创 2017-05-22 13:43:39 · 351 阅读 · 0 评论 -
React-Native 上的疑难杂症(未分类,待补充)
文章目录[React Native]错误: 'config.h' file not found / ":CFBundleIdentifier", Does Not Exist[1]React Native启动报错的问题 getCurrentAppState:error 和 objectAtIndexedSubscript:[React Native]错误: ‘config.h’ file not...原创 2019-09-24 14:32:23 · 484 阅读 · 0 评论 -
RN/JS里的相对路径
文章目录RN/JS里的相对路径RN/JS里的相对路径当前路径为d://depth1/depth2/path~images 和 /images -> 根路径d://images./images 和 images -> 当前目录路径dd://depth1/depth2/path/images…/images -> 当前目录的上一级d://depth1/depth2/i...原创 2019-09-25 15:09:41 · 504 阅读 · 0 评论 -
进程以及线程说明
线程和进程进程:当一个程序进入内存运行后,就变成了一个进程,进程是系统进行资源分配和调度的一个独立单位。 进程特性: 1. 独立性 :系统独立存在的尸体,拥有自己独立的资源和私有的地址空间,在没有进程本身允许的情况下,用户进程不可以访问其他进程的地址空间。 2. 动态性 :程序只是一个静态的指令集合,而进程是一个正在系统中活动的指令集合,进程中加入了时间的概念,进程具有自己的生命周期和各种原创 2016-06-17 19:06:16 · 419 阅读 · 0 评论 -
UITabBarItem显示真实自定义图片
_tabBarController = [[UITabBarController alloc]init]; [_tabBarController setViewControllers:@[recNav,feedNav,postNav,loginNav]]; // 拿到 TabBar 在拿到想应的item UITabBar *tabBar = _tabBarController原创 2016-06-06 22:14:36 · 419 阅读 · 0 评论 -
循环与跳出,以及块
IOS第二天_循环与跳出循环语句循环可用for、while、do whilebreak、continue、return、gotobreak是跳出循环语句,不会继续之后的循环 continue是跳出本次循环,然后继续之后的循环 return是跳出函数并返回值 goto会无条件跳转到标签所示位置,然后继续执行代码,由于无规则限制,可读性低,故在code中非必要情况下需尽量避免使用,可在多层嵌套循环原创 2016-02-16 13:44:00 · 575 阅读 · 0 评论 -
面向对象1
类和对象定义类OC中定义类需要以下两部分:接口部分:定义类包含的成员变量和方法,关键点在于定义,故而此处源代码一般命名为*.h文件实现部分:为类的方法提供实现,就是方法的code,故而此处源代码一般命名为*m文件类接口部分语法://@ubterface用于声明定义类的借口部分@interface MyPerson : NSObject//声明成员变量{ NSString * _n原创 2016-02-17 21:50:04 · 202 阅读 · 0 评论 -
Foundation框架解析
字符串(NSString与NSMutableString)创建字符串int main(int argh, char * argv[]){ @autoreleasepool { //定义unichar数组,该数组是个基本类型,就是unsigned short的别名 unichar data[6] = {1, 2, 3, 4, 5, 6};原创 2016-02-24 13:18:49 · 1924 阅读 · 0 评论 -
文件I/O
使用NSData与NSMutableData类方法创建对象以data开头,实例方法以init开头:data 创建一个不包含任何数据的空的NSData对象dataWithBytes:length:、initWithBytes:length: 复制C数组所包含的数据来初始化NSData数据dataWithBytesNoCopy:length:、initWithBytesNoCopy:length:原创 2016-03-04 16:38:36 · 364 阅读 · 0 评论 -
面向对象2
方法详解方法的所属性方法不能独立定义,hi能在类体力定义。从逻辑意义上看,方法要么属于类本很,要么属于类的一个对象不能独立执行方法,执行方法必须使用类或对象作为调用者形参个数可变的方法定义形参个数可变的方法时,在最后一个形参名后增加逗号和三个英文句点 , … - va_list:这是一个类型,用于定义指向可变参数列表的指针变量。 - va_start:这是一个函数,该函数指定开始处理可变原创 2016-02-19 16:58:55 · 201 阅读 · 0 评论 -
事件处理
程序获取控件的两种方式通过IBOutlet连接来获取控件打开辅助编辑器(show the assistant editor),保证编辑区的左边显示界面设计文件,右边显示该界面设计文件对应控制器的接口部分,单击控件不放,并按住 Control 键,将控件拖至 @interface 和 @end 之间的空白处,填写好弹出窗口即可。可通过连接检查器面板(Show the connections inspe原创 2016-03-06 09:57:27 · 353 阅读 · 0 评论 -
代码控制UI界面
代码控制UI界面简介:- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ // 创建UIWindow对象,并将该UIWindow初始化为与屏幕相同大小 self.window = [[UIWindow alloc]原创 2016-03-06 11:20:15 · 504 阅读 · 0 评论 -
IOS应用界面编辑01
UI控件概述UI控件大致分为三大类:活动控件:大部分继承于UIControl类,操作控件会激发绑定的事件以及相应的处理方法静态控件:大多值继承了UIView,未继承UIControl,用户不能操作控件,基本只是用来显示数据或状态被动控件:仅用于接受用户输入的值UIControl类主要是为活动控件的事件机制提供通用的实现方法:-(void)addTarget:(id)target actio原创 2016-03-06 12:29:32 · 255 阅读 · 0 评论 -
面向对象4
对象初始化[[class alloc] init] 中alloc负责为实例变量分配内存病将内存空间重置为0,init则初始化对象多个自定义动态初始化方法:#import "MyCar.h"@implementation MyCar@snythesize brand = _brand;@snythesize model = _model;@synthesize color = _coor;/原创 2016-02-21 12:49:11 · 224 阅读 · 0 评论 -
面向对象5
OC的包装类以下不是包装类:NSInteger 大致等于 long 型整数NSUInteger 大致等于 unsigned long 型整数CGFLoat 在64位平台大致相当于 double ,在32为平台大致相当于 float包装类:NSValueNSNumberNSValue 是 NSNumber的父类,NSValue 代表一个更通用的包装类,NSNumber是更具体的包装类,N原创 2016-02-21 16:22:07 · 197 阅读 · 0 评论 -
面向对象6
类别与扩展类别类别可以对已有类添加方法,类别中通常指定义方法,一般接口文件名为 已有类+类别名.h@interface 已有类 (类别名)//定义方法@end@implementation 已有类 (类别名)//实现方法@end通过类别为指定类添加新方法后,其子类也会获取新添加的方法 可对一个指定类添加多个类别通过类别调用私有方法私有方法:没有在接口部分中定义,只在实现部分中定义了的方法原创 2016-02-22 10:42:19 · 217 阅读 · 0 评论 -
面向对象7
手动内存管理OC可用内存回收机制有如下3种:手动引用计数和自动释放池自动引用计数(ARC——Automatic Reference Counting)自动垃圾回收 PS: IOS只支持前两者,另外需要注意的是,OC中的内存管理机制是统计引用计数,当引用计数为0时会触发对象的dealloc方法来销毁对象,从而释放内存。引用计数方法:-retain: 将该对象的引用计数器+1-releas原创 2016-02-23 21:56:43 · 244 阅读 · 0 评论 -
TableView与TableViewCell
TableViewCellTableViewCell是现实表格的单元格式 基本流程为在init中添加各种可用控件,再编写输入数据的方法,并且依据各数据来设定各控件的位置以及行高#import "TableViewCell.h"#import "Weibo.h"#define NJNameFont [UIFont systemFontOfSize:15]#define NJTextFont [原创 2016-06-09 19:14:07 · 308 阅读 · 0 评论 -
xcode中folder与group的区别
Xcode中的group(黄色)主要为工程项目的文件夹形式,xcode自生成的文件不会自动按照group的位置存放,而是散乱的存放,除非是从外界拖入项目并以group的形式创建的资源,且其代码文件可以进行编译并放进complie sources列表里 Xcode中的folder(蓝色)主要是从外界拖入项目并以folder的形式创建的资源,其代码文件不会进行编译,也不会放进complie sourc原创 2016-06-12 14:24:33 · 282 阅读 · 0 评论 -
关键字与运算符
IOS第一天_关键字与运算符标示符规则可以有字幕、数字。下划线(_)、美元符($)组成,不能以数字开头不能是OC的关键字,但可以包含关键字不能包含空格除了下划线以及美元符,不能包含@、#等其他特殊字符**OC关键字 auto break case char const continue default do double原创 2016-02-15 23:03:46 · 806 阅读 · 0 评论