C++实现顺序栈的基本功能
来源:互联网 发布:js脚本注入攻击 编辑:程序博客网 时间:2024/06/09 18:21
栈是限定仅在表头进行插入和删除操作的线性表,有着先进后出的特点(FILO);
现在我来动手实现栈的基本本功能练练手;
定义栈的头文件如下:
#ifndef CSTOCK_H_#define CSTOCK_H_const int STOCK_SIZE = 100;//定义栈的大小typedef int elemType;//定义栈元素类型,目前仅用int来练手class CStock{public:CStock(); //构造函数,构造空栈;bool push(elemType x); //进栈操作;bool pop(elemType &x); //出栈操作;void clear(); //清空栈;bool isEmpty(); //判断是否栈空;bool isFull(); //判断是否栈满;void print(); //打印栈内元素;~CStock();private: elemType elem[STOCK_SIZE]; int top;//指向栈顶;};#endif
实现基本功能如下:
#include "Stock.h"#include<iostream>using std::cout;using std::endl;//构造函数CStock::CStock():top(-1){}//进栈操作,进栈成功返回true,否则返回false;bool CStock::push(elemType x){ if(top == STOCK_SIZE - 1) { return false; } elem[++top] = x; return true;}//出栈操作,由形参x将元素带出主调函数,出栈成功返回true,否则返回false;bool CStock::pop(elemType &x){ if(top == -1) { return false; } x = elem[top--]; return true;}//清空栈,使栈为空;void CStock::clear(){top = -1;}//判断栈是否为空bool CStock::isEmpty(){return top == -1;}//判断栈是否栈满bool CStock::isFull(){return top == STOCK_SIZE - 1;}//打印栈void CStock::print(){ for(int i = 0; i <= top; i++) { cout << elem[i] << "\t"; if( (i+1) % 5 == 0) cout << endl; }}//析构函数CStock::~CStock(void){}
0 1
- 顺序栈基本功能的实现
- C++实现顺序栈的基本功能
- C++实现顺序栈的基本功能
- 栈的基本功能实现(C语言)
- C实现数组的基本功能
- 数据结构--顺序栈基本功能实现程序…
- 数据结构C语言版--静态顺序表的基本功能实现(一)
- 数据结构C语言版--动态顺序表的基本功能实现(二)
- 数据结构C 语言描述——实现栈的基本功能
- 二叉树的基本功能实现(c++)
- 线性表基本功能的c语言实现
- 数据结构C语言版--单链表的基本功能实现
- 顺序栈的实现 c
- 顺序栈的C实现
- 链式栈基本功能的简单实现
- 数据结构之栈的基本功能实现
- 数据结构 链栈的基本功能实现
- WINCE实现的基本功能
- 王立平--Unity破解
- vs2013设置
- iOS 知识大总结
- 数组做形参
- iOS In Action (1)
- C++实现顺序栈的基本功能
- VB.NET and C# 的语法区别举例
- Discuz UCenter无法打开以及头像裂图解决方法
- 百度有钱联盟邀请码有效期48小时
- 访问类的成员
- 私人列表
- 定义的顺序
- UVA 11584 - Partitioning by Palindromes
- C++读取文件单词计数