美文网首页00『 基础知识 』
iOS 中堆和栈的区别以及冒泡排序

iOS 中堆和栈的区别以及冒泡排序

作者: 高乔人 | 来源:发表于2018-06-05 11:46 被阅读1次

在引入堆和栈之前,先要知道,iOS中的内存管理范围:

 OC对象需要进行内存管理,非oc对象不需要进行内存管理,比如基本数据类型

OC对象存放于堆里面(堆内存要程序员手动回收)

非OC对象一般放在栈里面(栈内存会被系统自动回收)

堆里面的内存是动态分配的,所以也就需要程序员手动的去添加内存、回收内存

另外写一个冒泡排序吧,水平有限,还望指正:

NSMutableArray * array1 =[[NSMutableArray alloc]initWithObjects:@"zhishi",@"wag",@"bge",@"hao",@"chishiqu",@"xiaomi", nil];

    for(inti =0; i<[array1count]-1; i++) {

        for(intj =0; j<[array1count]-1-i; j++) {

            if(([array1[j]compare:array1[j+1]]) ==NSOrderedDescending){

                //交换

                [array1exchangeObjectAtIndex:j withObjectAtIndex:j+1];

                NSLog(@"%@",array1);

        }

    }

}

相关文章

  • iOS 中堆和栈的区别以及冒泡排序

    在引入堆和栈之前,先要知道,iOS中的内存管理范围: OC对象需要进行内存管理,非oc对象不需要进行内存管理,比如...

  • 栈和堆以及栈区和堆区的区别

    栈和堆以及栈区和堆区的区别 数据结构中的栈和堆 栈:具有先进后出性质的数据结构 堆:一种经过排序的树形数据结构,节...

  • 微盟3面

    一面: 类和struct的区别; 构造和拷贝构造的区别; 分析一下冒泡,选择,快速排序; 写个冒泡排序; 栈和队列...

  • iOSer必须了解的数据结构

    数据结构 :哈希表、堆、栈、队列、链表、二叉树 操作系统(iOS)的堆、栈 算法 :排序、冒泡、快排、二分查找 数...

  • iOS 栈和堆总结

    转载自 :大神博客iOS程序中的内存分配iOS 堆和栈的区别block与propertyiOS中__block 关...

  • 算法

    iOS冒泡排序、插入排序、选择排序、快速排序、二分查找用数组实现栈和队列专题:菲波那切数列与递归

  • iOS中堆和栈的区别

    分区: 1,栈区(stack)由编译器自动分配释放,存放函数(方法)的参数值,局部变量的值等,栈是由高地址向低地址...

  • iOS中堆和栈的区别

    先附一张图,这里只说堆和栈 栈区(stack)由编译器自动分配释放,存放方法(函数)的参数值,局部变量的值等 堆区...

  • ##iOS中堆和栈的区别

    前言 在我们编程中,不可避免的使用堆和栈内存,它们是什么?有什么区别?下面我从几个方面来说明区别 使用内存的行为 ...

  • JVM调优

    一、理解堆和栈的区别1:堆是存储数据的,栈中是存储程序的执行逻辑2:堆中存放基本数据类型以及对象的引用,栈中存储对...

网友评论

    本文标题:iOS 中堆和栈的区别以及冒泡排序

    本文链接:https://www.haomeiwen.com/subject/gnjpsftx.html