嵌入式之家

 找回密码
 现在注册

QQ登录

只需一步,快速开始

搜索
热搜: ARM cortex
查看: 1967|回复: 2

队列与栈的一些不同

[复制链接]

该用户从未签到

32

主题

81

帖子

771

积分

高级会员

Rank: 4

积分
771
发表于 2016-3-4 10:54:35 | 显示全部楼层 |阅读模式

(1)主要特点:队列先进先出,而栈先进后出。
(2) 对插入和删除操作的"限定": 栈是限定只能在表的一端进行插入和删除操作的线性表。 队列是限定只能在表的一端进行插入和在另一端进行删除操作的线性表。它们都是线性结构,即数据元素之间的关系相同。但它们是完全不同的数据类型。除了它们各自的基本操作集不同外,主要区别是对插入和删除操作的"限定"。
(3)遍历数据速度不同。栈只能从头部取数据 也就最先放入的需要遍历整个栈最后才能取出来,而且在遍历数据的时候还得为数据开辟临时空间,保持数据在遍历前的一致性;但是队列不同,它基于地址指针进行遍历,而且可以从头或尾部开始遍历,无需开辟临时空间,因为在遍历的过程中不影响数据结构,所以速度要快的多
(4)顺序队列建立操作:建立顺序队列结构必须为其静态分配或动态申请一片连续的存储空间,并设置两个指针进行管理。一个是队头指针front,它指向队头元素;另一个是队尾指针rear,它指向下一个入队元素的存储位置。每次在队尾插入一个元素是,rear+1;每次队头删除一个元素时,front+。随着插入和删除操作的进行,队列元素的个数不断变化,队列所占的存储空间也在为队列结构所分配的连续空间中移动。

回复

使用道具 举报

该用户从未签到

39

主题

91

帖子

1089

积分

金牌会员

Rank: 6Rank: 6

积分
1089
发表于 2016-3-4 16:27:04 | 显示全部楼层
回复

使用道具 举报

该用户从未签到

55

主题

168

帖子

1767

积分

金牌会员

Rank: 6Rank: 6

积分
1767
发表于 2016-3-7 10:24:59 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 现在注册

本版积分规则

QQ|Archiver|手机版|小黑屋|嵌入式之家 ( 京ICP备14038168号-1 )

GMT+8, 2024-5-20 20:51 , Processed in 0.019405 second(s), 26 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表