一、首先是两者的定义

栈也称为堆栈,是一种线性表。

栈的特性: 最先放入栈中的内容最后被拿出来,最后放入栈中的内容最先被拿出来, 被称为先进后出、后进先出。

队列也是一种特殊的线性表。不同于栈所服从的先进后出的原则,队列的原则是先进先出。

队列在队头做删除操作,在队尾做插入操作。

 

二、然后是两者的异同点

不同点:

1、删除数据元素的位置不同,栈的删除操作在表尾进行,队列的删除操作在表头进行。

2、队列先进先出,栈先进后出。

3、顺序栈能够实现多栈空间共享,而顺序队列不能。

4、遍历数据速度不同。

栈只能从头部取数据,也就最先放入的需要遍历整个栈最后才能取出来。

队列则不同,它基于地址指针进行遍历,而且可以从头或尾部开始遍历无需开辟临时空间,速度要快的多。

相同点:

1、都是线性结构

2、插入操作都是限定在表尾进行。

3、都可以通过顺序结构和链式结构实现。

4、插入与删除的时间复杂度与空间复杂度上两者均相同。

三、差异对比表格

栈与队列异同

 

 

相关文章:

  • 2021-07-03
猜你喜欢
  • 2021-07-02
  • 2022-12-23
  • 2021-11-03
  • 2021-07-22
  • 2022-01-22
  • 2021-09-17
  • 2021-04-08
相关资源
相似解决方案