美文网首页
堆、栈、队列的区别

堆、栈、队列的区别

作者: 忘惘的小风扇 | 来源:发表于2016-06-30 22:27 被阅读486次

    堆中主要存放用new构造的对象和数组
    优势:可以动态的分配内存的大小,生存期也不必事先告诉编译器,因为它是在运行时动态分配内存的。
    缺点:由于要在运行时动态分配内存,存取速度比较慢。

    栈中主要存放一些基本类型的变量和对象引用类型。
    优势:存取速度比较快,仅次于寄存器,栈数据可以共享。
    缺点:栈中的数据大小和生存周期必须是确定的,缺乏灵活性。

    队列

    是设计程序中常用的一种数据结构,采用“先进先出”的存储结构,类似于队列。数据元素只能从队尾进入,从队首取出。在此队列中,数据元素可以随意增减,但是数据元素的次序不会更改。每次都是取出队首的元素,后面的元素会整体向前移动一位。队列便利数据的速度要快的多

    相关文章

      网友评论

          本文标题:堆、栈、队列的区别

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