首页 > 编程知识 正文

栈和队列的概念及区别,栈队列和线性表的区别与联系

时间:2023-05-04 00:56:26 阅读:160361 作者:3714

数据结构中的堆栈与内存中的堆栈的区别一、数据结构中的堆栈

在数据结构内的堆栈中,实际上堆栈是堆和堆栈两种数据结构。 堆和堆栈是数据项按顺序排列的数据结构。

1 .堆栈就像装数据的桶或箱子

首先,从大家熟悉的堆栈开始吧。 具有后进先出性的数据结构。 也就是说,以后保管的东西先拿,先保管的东西后拿。 这就像把箱子里装的东西(放得快的物体)拿出来一样,我们必须先离开压在上面的东西(放得慢的物体)。

2 .像倒着的树一样堆起来

堆是不同的。 堆是已排序的树数据结构,每个节点都有一个值。 堆的数据结构通常是指两股堆。 堆的特征是根节点的值最小(或最大),根节点的两个子树也是一个堆。 由于堆的这一特性,它经常用于实现首选队列。 可以自由访问堆。 这就像在图书馆的书架上拿书一样。 书的配置是有顺序的,但像堆栈一样,不需要先取出所有的书。 书架这个机制和箱子不同,我们可以直接取出我们想要的书。

二、内存分配中的栈和堆

但是,我想说的重点不在这里。 我想说的堆和栈不是数据结构的堆和栈。 所谓数据结构的堆和堆栈,是为了区别于以后我想说的堆和堆栈区域。 请注意。

堆栈被分配了局部变量区域,堆空间向上增加,以分配程序员申请的内存空间。 另外,静态区域是分配静态变量、全局变量空间区域; 只读区域分配常数和程序代码空间。 还有其他分区

堆栈

创建包含数组的结构。 数组是我们的堆栈。 以顺序表的形式存储。 另外,还有记录堆栈长度的整形。

初始化是指将堆栈中元素的个数设置为0。

在堆栈中放入数据意味着下标为size的数组元素中存储值,存储后数组长度为size。

要删除的话,减少一个数据数就可以了。

阅读堆栈顶部的元素时,将返回最后一个堆栈的值,并减少堆栈中元素的数量。

队列

队列是在链表中实现的

堆栈和队列有什么区别? 队伍先进先出,有出口有入口,先进去就能先出。

堆栈就像箱子,放在后面的东西,可以先出去

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。