博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据结构中的堆栈和内存中的堆栈【转】
阅读量:2185 次
发布时间:2019-05-02

本文共 396 字,大约阅读时间需要 1 分钟。

(转自:)

内存常用的区域分类:栈区(stack)、堆区(heap)、全局区(static区)、文字常量区、程序代码区。

栈区:由编译器自动分配和释放,遵循”后进先出“的规则。在函数调用时,第一个进栈的是主函数中的下一条指令地址,然后是函数的各个参数(大多数C编译器中,参数从右往左入栈),然后是函数的局部变量。静态变量不入栈。

堆区:一般由程序员分配和释放,若程序员不释放,程序结束时”可能“由操作系统回收。一般在堆的头部用一个字节存放堆的大小。分配方式类似链表。

 

数据结构中的堆栈:

:遵循”后进先出“规则,根据存放数据的需求,可自己实现,也可以调用标准库中的实现。

:(二叉)堆是一种数组对象,可视为一棵完全二叉树(跟二叉树的实现不同),树的每一层都是满的(最后一层可能除外)。二叉堆有最大堆(根最大)和最小堆(根最小)。最大堆一般用在堆排序算法中,最小堆通常在构造优先队列时使用。

转载地址:http://qbqkb.baihongyu.com/

你可能感兴趣的文章
【JMeter】1.9上考试jmeter测试调试
查看>>
【虫师】【selenium】参数化
查看>>
【Python练习】文件引用用户名密码登录系统
查看>>
学习网站汇总
查看>>
【Python】用Python打开csv和xml文件
查看>>
【Loadrunner】性能测试报告实战
查看>>
【自动化测试】自动化测试需要了解的的一些事情。
查看>>
【selenium】selenium ide的安装过程
查看>>
【手机自动化测试】monkey测试
查看>>
【英语】软件开发常用英语词汇
查看>>
Fiddler 抓包工具总结
查看>>
【雅思】雅思需要购买和准备的学习资料
查看>>
【雅思】雅思写作作业(1)
查看>>
【雅思】【大作文】【审题作业】关于同不同意的审题作业(重点)
查看>>
【Loadrunner】通过loadrunner录制时候有事件但是白页无法出来登录页怎么办?
查看>>
【English】【托业】【四六级】写译高频词汇
查看>>
【托业】【新东方全真模拟】01~02-----P5~6
查看>>
【托业】【新东方全真模拟】03~04-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST05~06-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST09~10-----P5~6
查看>>