学习笔记(2)——栈和队列
来源:互联网 发布:python不可重复的序列 编辑:程序博客网 时间:2024/05/21 05:06
栈和队列都是线性结构,是特殊的线性表。
栈:
仅在表尾进行插入或删除元素的操作。表尾称为栈顶,表头称为栈底。不含元素的空表为空栈。又称为”先进后出“线性表。
栈有两种存储结构:顺序存储和链式存储(与线性表类似)
设置top指针指向栈顶位置,base指针指向栈底位置,当top = base 时,栈为空栈。使用C语言时,不应限定栈的最大容量:先分配一个基本容量,当空间不够使用时,使用realloc命令进行空间扩充。
使用时,结合实际问题,利用”先进后出“的性质。
队列
仅在表的一段插入数据元素(队尾),在标的另一端删除数据元素(队头)。“先进先出”的线性表。
还有“双端队列”的特殊形式:限定插入和删除操作在表的两端进行的线性表。实际应用中有:输入受限的双端队列(一个端点允许插入和删除、另一个端点只允许删除);输出受限的双端列表(一个端点允许插入和删除、另一个端点只允许插入)。
链队列:用链表表示的队列。需要两个分别指向队头和队尾的指针。可以增设一个头结点,头结点指向队头。
循环队列:用顺序存储结构实现的队列。将连续的存储空间想象成首尾相连的圆环,同样有两个分别指向队头和队尾的指针。当头指针与尾指针指向同一个存储位置时,队列为空队列。
0 0
- 学习笔记(2)——栈和队列
- python学习笔记(十四)——栈和队列
- 数据结构学习笔记——栈和队列
- 栈和队列学习笔记
- 算法学习笔记(二)——队列、栈、链表
- Jquery学习笔记——队列和Data
- 数据结构之队列和栈学习笔记
- 《Java数据结构和算法》学习笔记(3)——栈和队列
- Java之数据结构基础、线性表、栈和队列、数组和字符串,树—学习笔记
- Java之数据结构基础、线性表、栈和队列、数组和字符串,树—学习笔记
- 栈和队列(笔记)
- 栈和队列的数组实现—《算法导论》学习笔记之六
- 数据结构学习笔记 --- 队列(循环队列-队列的顺序表示和实现)
- 数据结构学习笔记 --- 队列(循环队列-队列的顺序表示和实现)
- 栈和队列笔记
- 学习笔记——用两个队列实现一个栈
- 数据结构学习笔记 --- 栈、队列 (习题)
- 数据结构学习笔记 --- 栈、队列 (习题)
- windows建立隐藏账户
- Linux下Opencv的安装及配置使用
- Android开发技巧——自定义控件之增加状态
- set run config
- PHP定界符
- 学习笔记(2)——栈和队列
- JavaEE_Mybatis_SpringMVC_Mybaits_lesson6__MyBatis传递pojo对象实现综合查询
- Java宝典(面试加笔记)
- android 控件 获取 position
- Linux命令之trap - 在脚本中处理信号
- Oracle 10g设置IP访问限制
- Android编程之SparseArray<E>详解
- 单片机控制数码管
- bindService的一些笔记