栈和队列都是什么结构_数据结构与算法之初识栈与队列
栈和队列
学习目标
本节我们将初步认识栈和队列,栈和队列是限定插入和删除只能在表的“端点”进行的线性表。
开始学习 01栈
是什么?
限定仅在表尾进行插入和删除操作的线性表,表尾—栈顶,表头—栈底,不含元素的空表称为空栈。
打个形象的比方,栈就像一个羽毛球筒,羽毛球就是一个个元素,每次我们取球都只能从最顶部取(不可能直接从球筒中间取吧,除非你在球筒中间开个洞),放球也一样,也只能从顶部放。
这里的取球就对应栈的出栈/弹出操作,注意不是栈的删除操作,区别就是前者的返回值会返回被弹出的元素,而后者则不会。
特点:
先进后出(FILO)或后进先出(LIFO)。就是说先进栈的元素总是后出来。现在不理解这句话的意思没关系,后面学栈的删除和添加元素的时候就会理解这句话的涵义
02队列
是什么?
队列是限定只能在表的一端进行插入(入队),而在表的另一端进行删除(出队)的线性表
队尾(rear) ——允许插入的一端
队首(front) ——允许删除的一端
队列其实很好理解,从字面意思来看,就像我们平时排队拿饭,我们总是从队尾加入队伍(插入元素),在队首取完饭的同学就从队伍离开(删除元素),当然这里要基于不出现插队这种不文明行为。
特点:
与栈不同,队列的特点是先进先出(FIFO),即先进入的元素总是最先出队。
●数据结构与算法之链表的一元多项式相加
●数据结构与算法之双向循环链表
●数据结构与算法之循环链表
多点关注多份关爱仙女都在看点点点,赞和在看都在这儿!
栈和队列都是什么结构_数据结构与算法之初识栈与队列相关推荐
- 假设有搅乱顺序的一群儿童成一个队列_数据结构与算法系列之栈amp;队列(GO)...
以下完整代码均可从这里获取 栈 栈的基本概念 「后进先出.先进后出就是典型的栈结构」.栈可以理解成一种受了限制的线性表,插入和删除都只能从一端进行 当某个数据集合只涉及在一端插入和删除数据,并且满足后 ...
- c++数据结构中 顺序队列的队首队尾_数据结构与算法—队列详解
前言 栈和队列是一对好兄弟,前面我们介绍过数据结构与算法-栈详解,那么栈的机制相对简单,后入先出,就像进入一个狭小的山洞,山洞只有一个出口,只能后进先出(在外面的先出去).而队列就好比是一个隧道,后面 ...
- c++数据结构中 顺序队列的队首队尾_数据结构与算法—队列图文详解
前言 栈和队列是一对好兄弟,前面我们介绍过数据结构与算法-栈详解,那么栈的机制相对简单,后入先出,就像进入一个狭小的山洞,山洞只有一个出口,只能后进先出(在外面的先出去).而队列就好比是一个隧道,后面 ...
- Python__数据结构与算法——表、栈、队列
目录 一.表 二.栈(后进先出) 三.队列(先进先出) 数据结构使用来描述一种或多种数据元素之间的特定关系,算法是程序设计中对数据操作的描述,数据结构和算法组成了程序.对于简单的任务,只要使用编程语言 ...
- c语言编写队列元素逆置,数据结构与算法实验—利用栈逆置队列元素.doc
数据结构与算法实验-利用栈逆置队列元素 利用栈逆置队列元素实验报告 通信1204班 谢崇赟 实验名称 利用堆栈将队列中的元素逆置 实验目的 会定义顺序栈和链栈的结点类型. 掌握栈的插入和删除结点在操作 ...
- abcde依次进入一个队列_数据结构与算法(6):队列
(文中图片出自王争老师的课程:数据结构与算法之美,侵删) 先进者先出,这就是典型的队列. 根据上篇文章,我们知道栈只支持两个基本操作:入栈 push()和出栈 pop().队列跟栈非常相似,支持的操作 ...
- 树的高度从零还是一开始数_数据结构与算法之1——树与二叉树
数据结构一直是让人头疼,面试遇到手撕算法题时真是慌得不行,从啥也不会刷题刷到游刃有余,路漫漫其修远兮~~.本人还是个算法菜鸟,而且还是想转行互联网的半吊子(好想拿大厂offer啊,幻想中..),希望能 ...
- java数据结构与算法之(Queue)队列设计与实现
[版权申明]转载请注明出处(请尊重原创,博主保留追究权) http://blog.csdn.net/javazejian/article/details/53375004 出自[zejian的博客] ...
- php学数据结构,PHP 程序员学数据结构与算法之《栈》
介绍 "要成高手,必练此功". 要成为优秀的程序员,数据结构和算法是必修的内容.而现在的Web程序员使用传统算法和数据结构都比较少,因为很多算法都是包装好的,不用我们去操心具体的实 ...
最新文章
- 零基础学习pythonrequests_requests库初体验
- Visual Studio Code启动项目
- [USACO2009 OPEN] 滑雪课 Ski Lessons
- MySQL中的多表插入更新与MS-SQL的对比
- P2842-LJJ算数【数论,快速幂】
- Python中Dict的查找
- 递归入门 斐波那契数列
- 0909 学习操作系统
- python语句块的定义_第五章、Python语句
- 无人车运动参数校准流程
- 2019 年 9 月全国程序员工资统计,你是什么水平?
- python3 使用sorted 实现倒序
- 信创好难?ARM应用移植避坑指南请收好
- GO语言-panic和recover
- USYD悉尼大学DATA1002 详细作业解析Module7(全新讲解)
- 计算机专业课程计划,计算机专业课程表(教学计划)
- 解决页面favicon.ico文件不存在提示404问题
- 国内的服务器的优势就是,国产芯片服务器的优势是什么
- Unity 人形动画、动画切割、Animator
- vue+openlayers实现地图打点
热门文章
- 【网络安全】如何利用工具发现内部或外部网络攻击面
- 【网络安全】Linux内核部分文件分析
- androidstudio 常用快捷键
- 【Laravel】连接sqlite,Database [] not configured,sqlite example
- 2、MySQL创建存储过程(CREATE PROCEDURE)(函数)
- 102. 最佳牛围栏【二分 / 思维 不错】
- 【PAT乙级】1094 谷歌的招聘 (20 分)
- 2.1.2 进程的状态与转换
- Oracle查询给表起别名
- python中uss的用法_使用不同内存ussag管理Python多进程进程进程