堆与栈 讲解

什么是堆栈?

堆栈是两种数据结构,它们只能在一端(称为栈顶(top))对数据项进行插入和删除。

  • 堆(heap): 队列优先,先进先出;由操作系统自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。
    • 引用类型
    • 用来存储引用
  • 栈(stack): 先进后出;动态分配的空间 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收,分配方式倒是类似于链表。
    • 基本类型
    • 用来存储值