码迷,mamicode.com
首页 >  
搜索关键字:动态分配内存    ( 245个结果
数据结构单链表,双链表,数组的底层实现原理
单链表: 链表是动态分配内存在内存中不连续,单链表只有一个向下的指针,指向下一个节点,单链表的定位时间复杂度是O(n),插入删除的时间复杂度是O(1) 双链表: 链表是动态分配内容在内存中不连续,单双链表一致,双链表有两个指针prov,next ,prov指向上一个节点,next指向下一个节点,理论 ...
分类:编程语言   时间:2018-10-10 23:51:54    阅读次数:217
动态分配内存-realloc
动态分配内存 relloc 关于 malloc 就不多说了,现在看看 realloc: 函数声明: void *realloc(void *ptr, size_t size); 功能:动态改变指针指向的内存块的大小。 使用:如果 ptr 指针是空指针,该函数的作用同 malloc; 如果 size ...
分类:其他好文   时间:2018-09-18 22:43:15    阅读次数:137
链表和数组的区别
数组静态分配内存,链表动态分配内存; 数组在内存中连续,链表不连续; 数组元素在栈区,链表元素在堆区; 数组利用下标定位,时间复杂度为O(1),链表定位元素时间复杂度O(n); 数组插入或删除元素的时间复杂度O(n),链表的时间复杂度O(1)。 ...
分类:编程语言   时间:2018-09-05 17:37:38    阅读次数:169
调用malloc 之后发生了什么????
4.5.1 堆管理的相关库函数 在ISO C中规定了三个动态分配内存的函数,分别是: void *malloc(size_t size); void *calloc(size_t nmemb, size_t size); void *realloc(void *ptr, size_t size);  ...
分类:其他好文   时间:2018-08-15 13:32:33    阅读次数:263
理解JavaScript中的堆和栈
这里先说两个概念:1、堆(heap)2、栈(stack)堆 是堆内存的简称。栈 是栈内存的简称。说到堆栈,我们讲的就是内存的使用和分配了,没有寄存器的事,也没有硬盘的事。各种语言在处理堆栈的原理上都大同小异。堆是动态分配内存,内存大小不一,也不会自动释放。栈是自动分配相对固定大小的内存空间,并由系统 ...
分类:编程语言   时间:2018-08-02 13:52:02    阅读次数:157
C++ 动态内存
C++ 动态内存了解动态内存在 C++ 中是如何工作的是成为一名合格的 C++ 程序员必不可少的。C++ 程序中的内存分为两个部分: 栈:在函数内部声明的所有变量都将占用栈内存。堆:这是程序中未使用的内存,在程序运行时可用于动态分配内存。很多时候,您无法提前预知需要多少内存来存储某个定义变量中的特定 ...
分类:编程语言   时间:2018-08-01 15:21:14    阅读次数:142
Java虚拟机--垃圾回收机制
Java与C++相比,具有动态分配内存和垃圾回收机制的技术优势,使得我们不用把精力集中在内存的管理上,那我们为什么还要去了解GC和内存分配呢?原因很简单:当需要排查各种内存溢出、内存泄漏问题时,当垃圾收集成为系统达到更高并发量的瓶颈时,我们就需要对这些“自动化”的技术实施必要的监控和调节。 1.为什 ...
分类:编程语言   时间:2018-07-03 20:46:49    阅读次数:158
C 动态分配内存
动态内存分配主要的函数有: malloc(), realloc(), calloc() 都包含在头文件 #include <stdlib.h> 里 这几个函数的定义: void *__cdecl malloc(size_t _Size); // 返回的是内存的首地址 void *__cdecl re ...
分类:其他好文   时间:2018-06-23 15:38:10    阅读次数:183
Java集合类初始容量、加载因子、扩容增量
当底层实现涉及到扩容时,容器或重新分配一段更大的连续内存(如果是离散分配则不需要重新分配,离散分配都是插入新元素时动态分配内存),要将容器原来的数据全部复制到新的内存上,这无疑使效率大大降低。 加载因子的系数小于等于1,意指 即当 元素个数 超过 容量长度*加载因子的系数 时,进行扩容。 另外,扩容 ...
分类:编程语言   时间:2018-06-21 13:45:04    阅读次数:189
Java堆和栈的区别和介绍,JVM的堆和栈
一、Java的堆内存和栈内存 Java把内存划分成两种:一种是堆内存,一种是栈内存。 堆:主要用于存储实例化的对象,数组。由JVM动态分配内存空间。一个JVM只有一个堆内存,线程是可以共享数据的。 栈:主要用于存储局部变量和对象的引用变量,每个线程都会有一个独立的栈空间,所以线程之间是不共享数据的。 ...
分类:编程语言   时间:2018-05-21 19:29:44    阅读次数:209
245条   上一页 1 ... 6 7 8 9 10 ... 25 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!