C语言的公共基础知识(3)
2016-10-11 10:54
218 查看
有关栈和队列
栈及其基本运算
a.基本概念:栈是一种特殊的线性表,其插入运算与删除运算都只在线性表的一端进行,也被称为“先进后出”表或“后进先出”表
栈顶:允许插入与删除的一端
栈底:栈顶的另一端
空栈:栈中没有元素的栈
b.特点:
栈顶元素是最后被插入和最早被删除的元素
栈底元素是最早被插入和最晚被删除的元素
栈有记忆作用
在顺序存储结构下,栈的插入和删除运算不需移动表中其他数据元素
栈顶指针top动态反映了栈中元素的变化情况
c.顺序存储和运算:入栈运算、退栈运算和读栈顶运算
队列及其基本元运算
a.基本概念:队列是指允许在一端进行插入,在另一端进行删除的线性表,又称“先进先出”的线性表
队尾:允许插入的一端,用尾指针指向队尾元素
排头:允许删除的一端,用头指针指向头元素的前一位置
b.循环队列及其运算
所谓循环队列,就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间。
入队运算是指在循环队列的队尾加入一个新元素。当循环队列非空(s=1)且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算,这种情况称为“上溢”。
退队运算是指在循环队列的队头位置退出一个元素并赋给指定的变量。首先将对头指针进一,然后将排头指针指向的元素赋给指定的变量。当循环队列为空(s=0)时,不能进行退队运算,这种情况称为“下溢”。
栈及其基本运算
a.基本概念:栈是一种特殊的线性表,其插入运算与删除运算都只在线性表的一端进行,也被称为“先进后出”表或“后进先出”表
栈顶:允许插入与删除的一端
栈底:栈顶的另一端
空栈:栈中没有元素的栈
b.特点:
栈顶元素是最后被插入和最早被删除的元素
栈底元素是最早被插入和最晚被删除的元素
栈有记忆作用
在顺序存储结构下,栈的插入和删除运算不需移动表中其他数据元素
栈顶指针top动态反映了栈中元素的变化情况
c.顺序存储和运算:入栈运算、退栈运算和读栈顶运算
队列及其基本元运算
a.基本概念:队列是指允许在一端进行插入,在另一端进行删除的线性表,又称“先进先出”的线性表
队尾:允许插入的一端,用尾指针指向队尾元素
排头:允许删除的一端,用头指针指向头元素的前一位置
b.循环队列及其运算
所谓循环队列,就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间。
入队运算是指在循环队列的队尾加入一个新元素。当循环队列非空(s=1)且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算,这种情况称为“上溢”。
退队运算是指在循环队列的队头位置退出一个元素并赋给指定的变量。首先将对头指针进一,然后将排头指针指向的元素赋给指定的变量。当循环队列为空(s=0)时,不能进行退队运算,这种情况称为“下溢”。
相关文章推荐
- C语言的公共基础知识(4)
- C语言的公共基础知识(5)
- C语言内存分配基础知识
- 在LINUX下进行C语言编程所需要的基础知识
- C语言/C++基础知识
- C语言内存管理基础知识总结
- C语言复习之结构体基础知识
- 计算机二级公共基础知识数据结构与算法
- C语言开发基础知识
- C语言需要注意的基础知识点(自己总结的)
- ucos在s3c2410上运行过程整体剖析之基础知识(2)-c语言和堆栈 .
- 编程基础知识学习———C语言中可变参数的用法
- LINUX下进行C语言编程所需要的基础知识.!!!
- C语言复习之结构体基础知识
- C语言2011计算机二级c语言考点:c语言的基础知识
- c语言之c语言基础知识
- LINUX下进行C语言编程所需要的基础知识
- ucos在s3c2410上运行过程整体剖析之基础知识-c语言和堆栈
- C语言复习之结构体基础知识
- 算法:C语言实现 (第1-4部分)基础知识、数据结构……