--------数据结构
Gaos的BLOG
Had I not seen the Sun
I could have borne the shade
But Light a newer Wilderness
My Wilderness has made
展开
-
iOS 堆和栈的区别?
前言 堆和栈是什么?有什么区别?是干嘛的?啥东西呀这是?别急,慢慢看下去 内存管理 移动设备的内存及其有限,每一个APP所能占用的内存是有限制的 (吐槽一下:iPhone6s还是16G起步,还好我也买不起->_-> 扯远了~~~) 什么行为会增加APP的内存占用 创建一个oc对象定义一个变量调用一个函数或者方法 内存管理范围 任何继承了NSObject的对象对其它非转载 2017-10-17 11:43:34 · 745 阅读 · 0 评论 -
数组、链表、Hash的优缺点
IOS笔试题总结(数组、链表、Hash的优缺点) 转载2016-04-22 17:08:33 数组、链表、Hash的优缺点: 1、数组是将元素在内存中连续存放。 链表中的元素在内存中不是顺序存储的,而是通过存在元素中的指针联系到一起。 2、数组必须事先定义固定的长度,不能适应数据动态地增减的情况。当数据增加时,可能超出原先定义的元素个数;当数据转载 2017-10-17 11:44:44 · 7042 阅读 · 0 评论 -
IOS 数据结构总结
数组(Array)1、数组元素在内存上连续存放,可以通过下标查找元素;插入、删除需要移动大量元素,比较适用于元素很少变化的情况 2、(静态(全局/静态范围的数组,以及局部变量属于静态数组)))数组从栈中分配空间, 对于程序员方便快速,但是自由度小 3、静态数组的变量本身就是数组第一个元素的地址。 链表(Linked List)1、链表中的元素在内存中不是顺序存储的,查找慢,插入、删除只需要对元素指针原创 2017-10-17 14:44:59 · 2247 阅读 · 0 评论 -
iOS开发中的内存分配(堆和栈)
进程的内存分区 所有进程(执行的程序)都必须占用一定数量的内存,它或是用来存放从磁盘载入的程序代码,或是存放取自用户输入的数据等等。不过进程对这些内存的管理方式因内存用途不一而不尽相同,有些内存是事先静态分配和统一回收的,而有些却是按需要动态分配和回收的。 进程内存区域.png 代码区:代码段是用来存放可执行文件的操作指令(存放函数的二进制代码),也就是说是它是可执行转载 2017-10-17 14:46:23 · 281 阅读 · 0 评论