#include "LinkStack.h"
#include <iostream>
#include <string>
using namespace std;
int main()
{
int x;
LinkStack<int>S{}; //定义链栈变量S
LinkStack<int>E{}; //定义链栈变量E
/*cout << "入栈元素:15、5";
S.Push(15);
S.Push(5);
cout << endl << "当前栈顶元素:" << S.GetTop() << endl;
try {
x = S.Pop();
cout << "出栈元素:" << x << endl;
}
catch (char* str) {
cout << str << endl;
}
cout << "当前栈顶元素:" << S.GetTop() << endl;
try {
cout << "请输入待插入元素:";
cin >> x;
S.Push(x);
}
catch (char* str) {
cout << str << endl;
}
cout << "当前栈顶元素:" << S.GetTop() << endl;
if (S.Empty() == true) {
cout << "栈为空" << endl;
}
else
{
cout << "栈非空" << endl;
}
try {
x = S.Pop();
cout << "出栈元素:" << x << endl;
}
catch (char* str) {
cout << str << endl;
}
try {
x = S.Pop();
cout << "出栈元素:" << x << endl;
}
catch (char* str) {
cout << str << endl;
}
cout << "当前栈顶元素:" << S.GetTop() << endl;*/
string expr;
cout << "输入表达式: ";
getline(cin, expr);
if (E.ParenthesesMatch(expr)) {
cout << "表达式中的括号匹配。" << endl;
}
else {
cout << "表达式中的括号不匹配。" << endl;
}
return 0;
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
1.内容概要: (1)实验目的: 1)熟练掌握栈的链式存储结构的实现; 2)熟练掌握链栈的基本操作算法实现,包括建栈、入栈、出栈、读栈顶元素和释放栈等; 3)灵活使用栈来解决具体的问题。 (2)实验内容: 1)定义链栈类,封装链栈的基本操作算法;(建议将链栈的类模板及实现算法单独写入.h头文件中); 2)利用链栈的基本操作与特性,从以下题目中选择一个完成: a.十进制数转换为二、八、十六进制数 b.算术表达式的括号匹配合法性判断。(表达式中包括的括号类型有圆括号()、方括号[]以及花括号{}) c.简单算术表达式求值。(表达式里包含运算数、+、-、*、/四类运算符及小括号()) 2.适用人群: 数据结构与算法初学者;C++编译基本掌握 3.使用场景: 数据结构与算法实验
资源推荐
资源详情
资源评论
收起资源包目录
链栈实验.zip (2个子文件)
链栈的定义及应用
LinkStack.cpp 1KB
LinkStack.h 1KB
共 2 条
- 1
资源评论
鸿·蒙
- 粉丝: 628
- 资源: 19
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功