栈:管程序如何运行的,程序如何执行,如何处理数据。(局部变量其实也是存在栈中的,引用数据类型在栈中存的是地址引用)(栈的空间就不需要那么大了)

堆:管数据存储的。(引用数据类型的存放,所以堆的空间是比较大的)

生活理解

是不是很形象?哈哈

栈的作用

主管Java程序的运行,它保存方法的局部变量(8种基本数据类型、对象的引用地址)、部分中间的结果,并参与方法的调用和返回。我们先粗粒度感受一个栈的结构:

每个线程都有自己的栈,栈中的数据都是以栈帧(stack Frame)的格式为基本单位进行存储的。(栈中保存的就是一个个栈帧)

在这个线程上正在执行的每个方法都各自对应一个栈帧。方法和栈帧一一对应,一个方法的执行会伴随这栈帧入栈,一个方法的结束会拌嘴栈帧的出栈)

栈中是否存在垃圾回收

不存在,栈中就是入栈出栈。

假如底层用数组实现的话,其实就是移动下标的。

模拟栈结构C语言代码:(栈用数组实现) https://www.jb51.net/article/69375.htm 栈和队列,是操作受限制的线性表,既然是线性表,那么你用顺序表,链表都可以实现。堆:利用完全二叉树的结构来维护一组数据


小编这里整理了一套Python入门基础教程,如何你打算学Python,或者已经在学Python的小伙伴,下面这些资料我相信应该非常适合你。

获取方式私信发送【资料】即可免费领取

Python实战案例

Python自动化办公教程(超级详细)

Python入门电子书

python 堆_面试再问你什么是堆和栈,你就把这篇文章甩给他相关推荐

  1. java执行sql文件_面试官问你MyBatis SQL是如何执行的?把这篇文章甩给他

    初识 MyBatis MyBatis 是第一个支持自定义 SQL.存储过程和高级映射的类持久框架.MyBatis 消除了大部分 JDBC 的样板代码.手动设置参数以及检索结果.MyBatis 能够支持 ...

  2. 面试官问你MyBatis SQL是如何执行的?把这篇文章甩给他

    来自:Java建设者 初识 MyBatis MyBatis 是第一个支持自定义 SQL.存储过程和高级映射的类持久框架.MyBatis 消除了大部分 JDBC 的样板代码.手动设置参数以及检索结果.M ...

  3. oracle sql 全是子查询查询速度太慢如何优化_如果面试官问你如何优化mysql分页查询,请把这篇文章甩给他!...

    在我们日常开发中,分页查询是必不可少的,可以说每干后端程序猿大部分时间都是CURD,所以分页的查询也接触的不少,你们都是怎么实现的呢?前不久的一段时间,我的一个同事突然找我寻求帮助,他说他写的sql查 ...

  4. 面试官问你B树和B 树,就把这篇文章丢给他

    原文链接:面试官问你B树和B 树,就把这篇文章丢给他 在看这篇文章之前,我们回顾一下前面的几篇关于MySQL的文章,应该对你读下面的文章有所帮助. InnoDB与MyISAM等存储引擎对比 面试官问你 ...

  5. a byte of python中文版_面试官问 Python 版 “垃圾回收”机制,我没答上来

    点击"开发者技术前线",选择"星标?" 13:21 在看|星标|留言,  真爱 选自<萌萌哒的柯基> 作者:heroyfhttps://www.he ...

  6. mysql 动态传入表名 存储过程_面试再问MySQL存储过程和触发器就把这篇文章给他...

    Mysql存储过程及触发器trigger 存储过程 一.一个简单的存储过程 1,一个简单的存储过程 delimiter $$create procedure testa()begin Select * ...

  7. 面试官问你B树和B+树,就把这篇文章丢给他

    1 B树 在介绍B+树之前, 先简单的介绍一下B树,这两种数据结构既有相似之处,也有他们的区别,最后,我们也会对比一下这两种数据结构的区别. 1.1 B树概念 B树也称B-树,它是一颗多路平衡查找树. ...

  8. 有人问你如何掌握隐含狄利克雷分布(LDA),把这篇文章甩给他

    作者 | 玉龍 一.简介 隐含狄利克雷分布(Latent Dirichlet Allocation,简称LDA)是由 David M. Blei.Andrew Y. Ng.Michael I. Jor ...

  9. 面试官问你GC怎么调优?思路是什么呀?我直接把这篇文章甩到面试官脸上

    有学过JVM垃圾回收机制的小伙伴肯定了解过CG调优,当面试官问到这个问题时,相信很多小伙伴第一时间想到的就是调节几个参数,调节一下分代的大小.简单的可以用这么一句话概括,水多了加面,面多了加水.十分形 ...

最新文章

  1. 02.elasticsearch_read_write模型基础
  2. mysql 修改密码演练
  3. 深度学习(七十四)半监督Mean teachers
  4. 关于perl中中文乱码的解决办法
  5. python websockets(wss)
  6. 宝马i3自动停泊技术
  7. centos 6.8 安装mysql
  8. Java实现微信聊天记录生成器
  9. SPSS实现线性回归
  10. linux启用日志记录功能,linux开启日志服务器功能
  11. qlib里alpha158因子库的计算与缓存
  12. 常用的计算机优化软件有哪些,计算机常用的硬件和软件优化软件和优化方法有哪些,如何提高WindowsXP系统的运行速度和稳定性...
  13. Windows安全机制---数据执行保护:DEP机制
  14. 任务调度系统就该这么设计(万能通用),稳的一批!
  15. cisco(思科)交换机配置篇【二】
  16. 游戏服务器里怎么看在线人数,数据大佬统计服务器在线人数 来看看哪区最鬼...
  17. JavaScript实现京东首页轮播图
  18. 语音识别(ASR)--语音转文字
  19. ae怎么设置gpu渲染_AE怎么开启影驰GTX750 GPU显卡加速?AE渲染开启GPU设置教程
  20. 计算机键盘重复,电脑怎么设置键盘重复延迟和重复速度?

热门文章

  1. VS2010中使用sprintf出现warning C4997: 'sprintf': This function or variable may be unsafe.
  2. EntityFramework进阶——继承
  3. python字典返回键值对列表_返回列表Python dict dictionaries Python 数据结构——字典 返回列表...
  4. 刀剑无双服务器显示404,刀剑无双如何开启GM命令 刀剑无双GM指令修改
  5. idea python工程zip打包_【面试划重点】-- Python常见知识点
  6. opencv模糊图像变清晰_opencv-python 4.2图像模糊
  7. python tk下拉列表_如何从Tkinter中的列表创建下拉菜单?
  8. docker privileged作用_docker总结
  9. html文本最小长度,CSS中处理不同长度文本的几种小技巧
  10. mysql100多个字段如何优化_MySQL 调优/优化的 100 个建议